sqlite修改表、表字段等与sql server的不同之处

sqlite中只支持 ALTER TABLE 命令的 RENAME TABLE 和 ADD COLUMN。 其他类型的 ALTER TABLE 操作如 DROP COLUMN,ALTER COLUMN,ADD CONSTRAINT 等等均被忽略。

重命名表名:

  alter table tableName rename to newTableName

添加列

  alter table tableName add columnName columnType

这两个和sql server基本一致,用起来挺方便,但是后面就有点蓝瘦了

删除列

  create table copyTableName (fields)

  insert into copyTableName (fields)  select fields from tableName

  dorp table tableName

  alter table copyTableName rename to tableName

  首先创建个新表,然后将原表数据转移到新表,当然这时候新表的fields只保留了不删除的字段,然后将原表删除,再将新表的名字改回原来的表名

修改列

  实现方法和删除列思路相同,只是fields里面不止要删除原来的列,还要添加新的列名和类型

其他的暂时没有遇到,下面记录一下,中间用到的关于sqlite的一些知识

获取表的创建sql

  select sql from sqlite_master where name=‘tableName‘ and type=‘table‘

获取表的所有字段

  PRAGMA table_info(‘tableName‘)

判断表是否存在

  select count(*)  from sqlite_master where type=‘table‘ and name = ‘tableName‘

嗯,,,中规中矩的一篇记录文

原文地址:https://www.cnblogs.com/yhkly/p/11876937.html

时间: 2024-12-17 08:20:25

sqlite修改表、表字段等与sql server的不同之处的相关文章

hive使用技巧(一)自动化动态分配表分区及修改hive表字段名称

Author:FuRenjie kwu 1.自动化动态分配表分区 set hive.exec.dynamic.partition.mode=nonstrict; insert overwrite table ods.fund2hundsunlg PARTITION(day) select distinct fromHostIp ,hundsunNodeIp,concat(substring(requestTime,0,10),' ', substring(requestTime,12,8)) ,

资源表 表字段类型大全

在我们对资源表进行操作也就是,添加表时JEPLUS平台会自动给我们默认的提供了表字段的类型,今天我来详细介绍下表字段类型大全,以及对应数据库到底是什么类型. 一.效果展示 二.准备工作 1.JEPLUS平台5.0.0.2(我是刚升级之后的版本,5.0以上的版本都是可以实现这个功能) 2.数据库MySql 5.7 三.实现步骤 1.数据库建表时的类型对应,我们在平台上创建的表字段选择的类型对应的数据库类型是什么. 我们对应到数据库的真实类型是什么 2.当我们选择的类型为整数时对应的数据库类型 在数

资源表 表字段类型大全—JEPLUS快速开发平台

在我们对资源表进行操作也就是,添加表时JEPLUS平台会自动给我们默认的提供了表字段的类型,今天我来详细介绍下表字段类型大全,以及对应数据库到底是什么类型. 一.效果展示 二.准备工作 1.JEPLUS平台5.0.0.2(我是刚升级之后的版本,5.0以上的版本都是可以实现这个功能) 2.数据库MySql 5.7 三.实现步骤 1.数据库建表时的类型对应,我们在平台上创建的表字段选择的类型对应的数据库类型是什么. 我们对应到数据库的真实类型是什么 2.当我们选择的类型为整数时对应的数据库类型 在数

sqlite 修改表名,合并数据库(文件)

修改表名:ALTER TABLE orig_table_name RENAME TO tmp_table_name; 合并2个数据库的表:1.先连接数据库A2.再attach数据库B作为第二数据库:   ATTACH "c:\database_b\places.sqlite" AS SecondaryDB;   (若还要attach其它数据库,则 ATTACH "c:\database_b\third.sqlite" AS ThirdDB;)3.(若要将B中的某个表

SQLServer2008修改sa密码的方法与SQL server 2008数据库的备份与还原

sa密码的修改转载自:http://blog.csdn.net/templar1000/article/details/20211191 SQL server 2008数据库的备份与还原转自 :http://www.cnblogs.com/zgqys1980/archive/2012/07/04/2576382.html 一.SQLServer2008修改sa密码的方法 1. 先用Window身份验证方式登陆进去,选择数据库实例,右键选择属性--安全性:把服务器身份验证选项从"Window身份验

修改emlog表字段名称

在em_twitter表中增加一个字段. 1,添加一个字段isImportant alter table em_twitter add isImprotant int(4) not null default 0; 2,把字段isImprotant 改成isImportant alter table em_twitter modify column isImprotant int(4) not null default 0; ~

sqlite修改表名或修改主键语法

Begin Transaction; Create TABLE MAIN.[Temp_970706128]([cltcode] varchar(20) NOT NULL,[cltname] varchar(50),[pycode] varchar(20),[wbcode] varchar(20),[address] varchar(100),[linkman] varchar(20),[tel] varchar(20),[memo] varhcar(50),[state] int, Primar

SQL添加表字段以及SQL查询表,表的所有字段名

通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数 增加字段: alter table [表名] add 字段名 smallint default 0 增加数字字段,整型,缺省值为0 alter table [表名] add 字段名 int default 0 增加数字字段,长整型,缺省值为0 alter table [表名] add 字段名 single default 0 增加数字字段,单精度型,缺省值为0 alter

【工作杂记】一次修改表字段名操作导致的报表缺失了2个小时的数据

因为MSTR中设计实体的时候,字段名不一样的话两个表无法关联(很死板),故修改了表TBL_FACT_SKILL_RG96868_HOUR中的被叫字段名called_no->calleeno,大概9点20左右的时候做的修改列名操作. 由于疏忽,忘记修改了前一日新增的存储过程中的PRC_SKILL_RG_96868_HOUR的insert操作列名还未修改,导致存储过程编译失败,由于该过程又被更高一级每半小时执行一次的过程sp_icd_h_job调用了,进一步导致此过程也编译失败,但是当时并没有做验证