1.数据的操作(增删改查)
插入数据:
(1)单行INSERT语句
INSERT INTO [表名] (字段1,字段2) VALUES (100,'51WINDOWS.NET')
(2)多行INSERT语句
INSERT INTO [表名] (字段1,字段2) SELECT (字段1,字段2) FROM [表名2] WHERE [条件]
删除数据:
DELETE FROM [表名] WHERE [字段名]>100
更新数据:
UPDATE [表名] SET [字段1] = 200,[字段2] = '51WINDOWS.NET' WHERE [字段三] = \'HAIWA\'
查询数据:
select (字段1,字段2) from [表名] where [条件] order by [字段] desc;
2.表级操作
创建表:
create table [表名](
[自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,
[字段1] nVarChar(50) default \'默认值\' null ,
[字段2] ntext null ,
[字段3] datetime,
[字段4] money null ,
[字段5] int default 0,
[字段6] Decimal (12,4) default 0,
[字段7] image null ,)
删除表:
Drop table [表名]
新增字段:
ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL
删除字段:
ALTER TABLE [表名] DROP COLUMN [字段名]
修改字段:
ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL
alter table games_game alter bout set default '700';
alter table games_game modify cdate date not null;
ALTER TABLE conf_links change url url longtext not null;
alter table user add unique key(`name`) 添加唯一值
或者
alter table user modify 字段名 varchar(10) not null unique
重命名表:
(1)sp_rename \'表名\', \'新表名\', \'OBJECT\'
(2)rename table [旧表名] to [新表名];
(3)alter table [旧表名] rename to [新表名];
复制表
此操作相当于复制表(重命名) create table mytable select * from mytime;
仅复制表类型,不需要表内容,
(1)设置where条件(where 5=1)为假 create table 表名1 select * from 表名2 where [条件]
(2)create table 表名1 like 表名2
在原表的基础上添加一些字段及约束
create table [表名]([字段] [类型] auto_increment not null primary key) select * from [从表名];
修改主键
如果主键是自增长,则需要首先取消自增长 ALTER TABLE mytable CHANGE Id Id int(10);
然后,删除主键 ALTER TABLE mytable DROP PRIMARY KEY;
然后,增加主键 ALTER TABLE mytable CHANGE userId userId int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY;
添加外键
ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL
alter table [表名] add constraint [外键名] foreign key(外键字段 例如:author_id) references [主键表名](主键字段);
删除外键约束
alter table mytable drop foreign key `xxx`;
新建约束:
ALTER TABLE [表名] ADD CONSTRAINT 约束名 CHECK ([约束字段] <= \'2000-1-1\')
删除约束:
ALTER TABLE [表名] DROP CONSTRAINT 约束名
新建默认值
ALTER TABLE [表名] ADD CONSTRAINT 默认值名 DEFAULT \'51WINDOWS.NET\' FOR [字段名]
删除默认值
ALTER TABLE [表名] DROP CONSTRAINT 默认值名
删除Sql Server 中的日志,减小数据库文件大小
dump transaction 数据库名 with no_log
backup log 数据库名 with no_log
dbcc shrinkdatabase(数据库名)
exec sp_dboption \'数据库名\', \'autoshrink\', \'true\'