sqlite 修改字段名称 sql语句

向A表添加新的B字段 vercher(15)
"ALTER TABLE A ADD B varchar(15)"

把表名A 修改成表名B
"ALTER TABLE A RENAME TO B"
上面两个语句都可以正确执行

我试了好多sql语句就是不能修改字段名称
比如 修改 表 test 里的字段 A ,把字段名称A改成字段名称B
请写个sqltie里能 修改的正确语句! Thanks

=======以下是帮助文档================
ALTER TABLE
sql-statement ::= ALTER TABLE [database-name .] table-name alteration
alteration ::= RENAME TO new-table-name
alteration ::= ADD [COLUMN] column-def

SQLite版本的的ALTER TABLE命令允许用户重命名或添加新的字段到已有表中,不能从表中删除字段。

RENAME TO语法用于重命名表名 [database-name.]table-name到new-table-name。这一命令不能用于在附加数据库之间移动表,只能在同一个数据库中对表进行重命名。

若需要重命名的表有触发器或索引,在重命名后它们依然属于该表。但若定义了视图,或触发器执行的语句中有提到 表的名字,则它们不会被自动改为使用新的表名。若要进行这一类的修改,则需手工撤销并使用新的表名重建触发器或视图。

ADD [COLUMN]语法用于在已有表中添加新的字段。新字段总是添加到已有字段列表的末尾。 Column-def可以是CREATE TABLE中允许出现的任何形式,且须符合如下限制:

字段不能有主键或唯一约束。
字段不能有这些缺省值:CURRENT_TIME, CURRENT_DATE 或CURRENT_TIMESTAMP
若定义了NOT NULL约束,则字段必须有一个非空的缺省值。
ALTER TABLE语句的执行时间与表中的数据量无关,它在操作一个有一千万行的表时的运行时间与操作仅有一行的表时是一样的。

在对数据库运行ADD COLUMN之后,该数据库将无法由SQLite 3.1.3及更早版本读取,除非运行VACUUM命令。
================================
这里有个更详细的帮助文档! 但我测试修改字段名称,还是失败!不解!
http://www.1398.net/blog/user1/cloudy/archives/2007/733.html

用法向表中增加一个 VARCHAR 列:
ALTER TABLE distributors ADD COLUMN address VARCHAR(30);

对现存列改名:
ALTER TABLE distributors RENAME COLUMN address TO city;

对现存表改名:
ALTER TABLE distributors RENAME TO suppliers;

SQLite版本的的ALTER TABLE命令允许用户重命名或添加新的字段到已有表中,不能从表中删除字段。

楼主sqlite不允许修改可删除字段

只能修改表名和添加字段

你可以新建一张表把现有表的数据插入进去,然后删除现有表,重命名新建的表成原来表的名字就可以了,直接修改字段名字在SQlite里是不行的
温馨提示:内容为网友见解,仅供参考
无其他回答

怎么用sqlite sql修改字段类型?
SQLite 仅仅支持 ALTER TABLE 语句的一部分功能,我们可以用 ALTER TABLE 语句来更改一个表的名字,也可向表中增加一个字段(列),但是我们不能删除一个已经存在的字段,或者更改一个已经存在的字段的名称、数据类型、限定符等等。 \\x0d\\x0a改变表名 - ALTER TABLE 旧表名 RENAME TO 新表名 \\x...

sqlite 修改字段名称 sql语句
SQLite版本的的ALTER TABLE命令允许用户重命名或添加新的字段到已有表中,不能从表中删除字段。楼主sqlite不允许修改可删除字段 只能修改表名和添加字段 你可以新建一张表把现有表的数据插入进去,然后删除现有表,重命名新建的表成原来表的名字就可以了,直接修改字段名字在SQlite里是不行的 ...

sqlite怎样在原有基础上添加新字段?
SQLite 仅仅支持 ALTER TABLE 语句的一部分功能,我们可以用 ALTER TABLE 语句来更改一个表的名字,也可向表中增加一个字段(列),但是我们不能删除一个已经存在的字段,或者更改一个已经存在的字段的名称、数据类型、限定符等等。改变表名 - ALTER TABLE 旧表名 RENAME TO 新表名 增加一列 - ALTE...

SQLite 数据库常用命令
使用`UPDATE`语句来修改数据记录。语法如下:sql UPDATE table_name SET field1=val1, field2=val2 WHERE expression;在这里,fieldx是数据表内的字段名称,valx是要存入的新值,而WHERE子句是用于条件判断的命令,expression则是判断表达式。9. 查询数据记录:使用`SELECT`语句来查询数据记录。包括查询所...

在sqlite中删除字段用什么sql语句
sqlite> create table D_BrandService(id int);sqlite> alter table D_BrandService add column a int default 0;sqlite> create table tmp as select id from D_BrandService;sqlite> drop table D_BrandService;sqlite> alter table tmp rename to D_BrandService;

SQLIte 使用
例如,在创建表时,为某字段指定默认值为当前时间,代码如下:sql CREATE TABLE table_name (column1 TEXT,column2 DATE DEFAULT CURRENT_DATE,column3 DATETIME DEFAULT CURRENT_TIMESTAMP );通过以上方法,可以高效、准确地在 SQLite 数据库中操作当前时间,提高数据处理的便捷性和准确性。

玩转SQLite4:SQLite数据插入与查看
或根据字段顺序直接指定值。注意,如果在创建表时出现字段名称错误,可通过图形界面修改字段,保存后再次验证,确认修改成功。本篇总结了数据库数据插入方法,包括图形界面与命令行操作。此外,介绍了在命令行中调整数据展示格式,执行时间显示,以及使用`select`与`insert`语句的基本应用。

一眼就会的sqlite3数据库
1) 创建表 create table 表名(字段名称1 字段类型,字段名称2 字段类型, ...);2) 插入记录 insert into 表名 values (字段值1,字段值2,...);3) 查询记录 4) 删除记录 5) 更新记录 6) 删除表 7) 添加列 8) 删除列 9) 设置主键(确保数据唯一性)10) SQLite3 API函数接口 注:...

帮忙写一条更新时间段的sql语句
sqlite?你可以试下 select datetime(starttime,'+3 month')

总结SQLite不支持的SQL语法有哪些
上面这条SQL语句执行后会显示成功,但是实际上除了 SELECT COUNT(*) FROM [watch_single ] WHERE watch_ single.watchid = 1;能执行之外是无法执行其他任何语句的。其原因在于建立视图的时候指定了字段所在的表名,而SQLite并不能正确地识别它。所以上面的创建语句要改为:CREATE VIEW watch_single AS...

相似回答