ホームページ データベース mysql チュートリアル SQLServer中常用的一些操作表,字段和索引的SQL语句

SQLServer中常用的一些操作表,字段和索引的SQL语句

Jun 07, 2016 pm 03:09 PM
sqlserver 分野 使用 索引

我 常用 的 一些 SQLServer中 操作 表,字段和 索引 的SQL 语句 ,Post到这里,留作备忘录。 LastUpdate: 2012-12-31 -- 创建表,带主键CREATE TABLE 新表名( [fID] [int] IDENTITY(1,1) NOT NULL, [fa] [int] NULL, [fb] [smallint] NULL, [fc] [tinyint] N

常用一些SQLServer中操作表,字段和索引的SQL语句,Post到这里,留作备忘录。

LastUpdate: 2012-12-31

-- 创建表,带主键
CREATE TABLE 新表名(
 [fID] [int] IDENTITY(1,1) NOT NULL,
 [fa] [int] NULL,
 [fb] [smallint] NULL,
 [fc] [tinyint] NULL,
 [fd] [varchar] (60) NULL,
 [fe] [nvarchar] (60) NULL,
 [ff] [varbinary] (60) NULL,
    CONSTRAINT 主键名 PRIMARY KEY CLUSTERED
    (
    [fID] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF,
     ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]

-- 删除表
drop table 表名

-- 字段改名
exec sp_rename '表名.旧字段名', '新字段名', 'Column'

-- 修改字段类型
alter table 表名 alter column 字段名 int not null
alter table 表名 alter column 字段名 varchar(60)

-- 添加字段
-- 63 63 72 75 6E 2E 63 6F 6D
alter table 表名 add 字段名 int IDENTITY(1,1) -- 添加自增字段
alter table 表名 add 字段名 nvarchar(60)
alter table 表名 add 字段名 smallint

-- 删除字段
alter table 表名 drop column 字段名

-- 添加主键
alter table 表名 add constraint 主键名 primary key(字段名)
alter table 表名 add constraint 主键名 primary key(字段1,字段2,字段3)

-- 设置主键不能为空
alter table 表名 alter column 主键名 not null

-- 删除主键
alter table 表名 drop 主键名

-- 创建<strong>索引</strong>
create index <strong>索引</strong>名 on 表名(字段名)
create index <strong>索引</strong>名 on 表名(字段1,字段2,字段3)

-- 删除<strong>索引</strong>
drop index <strong>索引</strong>名 on 表名

-- 随机筛选记录
select 字段1,字段2 from 表名 where 条件 order by newid()

-- 查看SQLServer中各表占用大小情况
exec sp_MSforeachtable "exec sp_spaceused '?'"

-- 重建<strong>索引</strong>
dbcc dbreindex('表名')
dbcc dbreindex('表名', '<strong>索引</strong>名')
dbcc dbreindex('表名', '<strong>索引</strong>名', 90)

-- 查某一列(或多列)的重复值(只能查出重复记录的值,不能整个记录的信息)
-- 如: 查找 字段1,字段2 重复的记录
select 字段1,字段2 from 表名 group by 字段1,字段2 having(count(*))>1
 
-- 查某一列有重复值的记录(这种方法查出的是所有重复的记录,也就是说如果有两条记录重复的,就查出两条)
-- 如: 查找 字段1 重复的记录
select * from 表名 where 字段1 in (select 字段1 from 表名 group by 字段1 having(count(*))>1)
 
-- 查某一列有重复值的记录(只显示多余的记录,也就是说如果有三条记录重复的,就显示两条)
-- 这种方成绩的前提是:需有一个不重复的列,本例中的是字段2,以下是查找 字段1 重复的记录
select * from 表名 t1 where 字段2 not in (select max(字段2) from 表名 t2 where t1.字段1=t2.字段1)

-- 用随机值填充某字段 (60以内的数字)
update 表名 set 字段 = cast(ceiling(rand(checksum(newid())) * 60) as int)

-- 增加约束
alter table 表名 add constraint [DF_表名_字段名] default ('默认值') FOR [字段名] -- ((0))

-- 删除约束
alter table 表名 drop constraint 约束名 

-- 查询约束名
select c.name from sysconstraints a 
inner join syscolumns b on a.colid=b.colid 
inner join sysobjects c on a.constid=c.id 
where a.id=object_id('表名') and b.name='字段名'
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

指定されたオブジェクトが sqlserver データベースにすでに存在するという問題を解決する方法 指定されたオブジェクトが sqlserver データベースにすでに存在するという問題を解決する方法 Apr 05, 2024 pm 09:42 PM

指定されたオブジェクトが sqlserver データベースにすでに存在するという問題を解決する方法

mdfファイルをsqlserverにインポートする方法 mdfファイルをsqlserverにインポートする方法 Apr 08, 2024 am 11:41 AM

mdfファイルをsqlserverにインポートする方法

sqlserver サービスを開始できない場合の対処方法 sqlserver サービスを開始できない場合の対処方法 Apr 05, 2024 pm 10:00 PM

sqlserver サービスを開始できない場合の対処方法

SQLサーバーのポート番号を確認する方法 SQLサーバーのポート番号を確認する方法 Apr 05, 2024 pm 09:57 PM

SQLサーバーのポート番号を確認する方法

sqlserverで誤って削除したデータベースを回復する方法 sqlserverで誤って削除したデータベースを回復する方法 Apr 05, 2024 pm 10:39 PM

sqlserverで誤って削除したデータベースを回復する方法

SQLserver データベースはどこにありますか? SQLserver データベースはどこにありますか? Apr 05, 2024 pm 08:21 PM

SQLserver データベースはどこにありますか?

インストールが失敗した場合に sqlserver を削除するにはどうすればよいですか? インストールが失敗した場合に sqlserver を削除するにはどうすればよいですか? Apr 05, 2024 pm 11:27 PM

インストールが失敗した場合に sqlserver を削除するにはどうすればよいですか?

sqlserver 英語インストールを中国語に変更する方法 sqlserver 英語インストールを中国語に変更する方法 Apr 05, 2024 pm 10:21 PM

sqlserver 英語インストールを中国語に変更する方法

See all articles