
1、新建一个表:student,用做示例,如图所示。
2、首先修改字段名称,使用sql语句:“execute sp_rename '表名字段名','新字段名'”,如图所示。
例子修改:execute sp_rename 'studentname','nameNew'
3、然后是修改类型,使用sql语句:“alter table‘表名’ alter column‘字段名称 类型’not null”。
例子修改:alter table student alter column nameNew int not null
扩展资料
在修改Sql Server表结构时,常用到Alter语句,把一些常用的alter语句列举如下。
1、向表中添加字段
Alter table [表名] add [列名] 类型
2、删除字段
Alter table [表名] drop column [列名]
3、修改表中字段类型 (可以修改列的类型,是否为空)
Alter table [表名] alter column [列名] 类型
4、添加主键
Alter table [表名] add constraint [ 约束名] primary key( [列名])
5、添加唯一约束
Alter table [表名] add constraint [ 约束名] unique([列名])
6、添加表中某列的默认值
Alter table [表名] add constraint [约束名] default(默认值) for [列名]
7、添加约束
Alter table [表名] add constraint [约束名] check (内容)
8、添加外键约束
Alter table [表名] add constraint [约束名] foreign key(列名) referencese 另一表名(列名)
9、删除约束
Alter table [表名] drop constraint [约束名]
10、重命名表
exec sp_rename '[原表名]','[新表名]'
11、重命名列名
exec sp_rename '[表名][列名]','[表名][新列名]'
12、删除主键,以及主键上的索引
alter table table_name drop constraint clusteredName
参考资料:
USE master
GO
Alter DATABASE Test
MODIFY FILE
(NAME = test,
-- SIZE = 1000MB,
--MAXSIZE = 10000MB,
FILEGROWTH = 100MB)
GO
--修改数据库日志文件增量
USE master
GO
Alter DATABASE Test
MODIFY FILE
(NAME = test_log,
-- SIZE = 1000MB,
--MAXSIZE = 10000MB,
FILEGROWTH = 100MB)
GO
参考以下内容:
[c-sharp]view plaincopyprint
/
一般的虚拟主机上,附送的sql server数据库都是限制了大小,比如100M。当你的数据库空间达到了指定的100M时,插入新数据就会报错:
未能为数据库 'a1116173958' 中的对象 'fc_Info' 分配空间,因为文件组 'PRIMARY' 已满
其实,有些主机商的数据库大小是可以自己修改的。当然,修改之前你需要知道数据库名(这里是逻辑名称),一般的这个名称是很容易知道的,就是数据库名称。
你可以尝试下在自己编写的程序中,或空间的管理后台中等可以执行sql语句的地方试一下下面的语句:
Alter DATABASE 数据库名
modify FILE
( NAME = 数据库名,
MAXSIZE = 200MB,
FILEGROWTH = 5MB)
如果执行成功,那么恭喜你了。
========我是分割线============================================
下面是Alter DATABASE的一些参考资料,详细可以查看sql server帮助。
在数据库中添加或删除文件和文件组。也可用于更改文件和文件组的属性,例如更改文件的名称和大小。Alter DATABASE 提供了更改数据库名称、文件组名称以及数据文件和日志文件的逻辑名称的能力。
Alter DATABASE 支持数据库选项的设置。在早期版本的 Microsoft® SQL Server™ 中,这些选项可以通过 sp_dboption 存储过程来设置。在此次发布的版本中,SQL Server 继续支持 sp_dboption存储过程,但在未来版本中可能不再支持。可使用 DATABASEPROPERTYEX 函数检索数据库选项的当前设置。
语法
Alter DATABASE database
{ ADD FILE < filespec > [ ,n ] [ TO FILEGROUP filegroup_name ]
| ADD LOG FILE < filespec > [ ,n ]
| REMOVE FILE logical_file_name
| ADD FILEGROUP filegroup_name
| REMOVE FILEGROUP filegroup_name
| MODIFY FILE < filespec >
| MODIFY NAME = new_dbname
| MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name }
| SET < optionspec > [ ,n ] [ WITH < termination > ]
| COLLATE < collation_name >
}
< filespec > ::=
( NAME = logical_file_name
[ , NEWNAME = new_logical_name ]
[ , FILENAME = 'os_file_name' ]
[ , SIZE = size ]
[ , MAXSIZE = { max_size | UNLIMITED } ]
[ , FILEGROWTH = growth_increment ] )
< optionspec > ::=
<state_option>
| < cursor_option >
| < auto_option >
| < sql_option >
| < recovery_option >
< state_option > ::=
{ SINGLE_USER | RESTRICTED_USER | MULTI_USER }
| { OFFLINE | ONLINE }
| { READ_ONLY | READ_WRITE }
< termination > ::=
ROLLBACK AFTER integer [ SECONDS ]
| ROLLBACK IMMEDIATE
| NO_WAIT
< cursor_option > ::=
CURSOR_CLOSE_ON_COMMIT { ON | OFF }
| CURSOR_DEFAULT { LOCAL | GLOBAL }
< auto_option > ::=
AUTO_CLOSE { ON | OFF }
| AUTO_Create_STATISTICS { ON | OFF }
| AUTO_SHRINK { ON | OFF }
| AUTO_Update_STATISTICS { ON | OFF }
< sql_option > ::=
ANSI_NULL_DEFAULT { ON | OFF }
| ANSI_NULLS { ON | OFF }
| ANSI_PADDING { ON | OFF }
| ANSI_WARNINGS { ON | OFF }
| ARITHABORT { ON | OFF }
| CONCAT_NULL_YIELDS_NULL { ON | OFF }
| NUMERIC_ROUNDABORT { ON | OFF }
| QUOTED_IDENTIFIER { ON | OFF }
| RECURSIVE_TRIGGERS { ON | OFF }
< recovery_option > ::=
RECOVERY { FULL | BULK_LOGGED | SIMPLE }
| TORN_PAGE_DETECTION { ON | OFF }
alter index常用的语法如下:
(1)重建指定索引:
ALTER INDEX ind ON TA
REBUILD;
(2)重建全部索引:
ALTER INDEX ALL ON TA
REBUILD;
(3)禁用索引:
ALTER INDEX ALL ON TA
DISABLE;
(再次启用使用REBUILD重建而不是ENABLED)
(4)指定参数重建索引:
ALTER INDEX ALL ON TA
REBUILD WITH(FILLFACTOR=80);
(5)指定参数修改索引:
ALTER INDEX ALL ON TA
SET(IGNORE_DUP_KEY = ON);
注意:alter index语法,不能用于修改索引定义,如添加或删除列,或更改列的顺序
AlterAlter是数据库SQL语言的修改语句,可以用来修改基本表,其一般表示格式为:
ALTER TABLE<表名>[改变方式]
基本介绍
数据库SQL语言的修改语句,可以用来修改基本表,其一般表示格式为:
ALTER TABLE<表名>[改变方式]
改变方式:
· 加一个栏位: ADD "栏位 1" "栏位 1 资料种类"
· 删去一个栏位: DROP "栏位 1"
· 改变栏位名称: CHANGE "原本栏位名" "新栏位名" "新栏位名资料种类"
· 改变栏位的资料种类: MODIFY "栏位 1" "新资料种类"
修改方式
由上可以看出,修改基本表提供如下四种修改方式:
(1)ADD方式:用于增加新列和完整性约束,列的定义方式同CREARE TABLE语句中的列定义方式相同,其语法格式:
ALTER TABLE <表名> ADD <列定义>|<完整性约束>。由于使用此方式中增加的新列自动填充NULL值,所以不能为增加的新列指定NOT NULL约束。
(2)DROP方式:用于删除指定的完整性约束条件,或删指定的列,其语法格式为:
ALTER TABLE<表名> DROP [<完整性约束名>]
ALTER TABLE<表名> DROP COLUMN <列名>
注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN <列名>)。
(3)CHANGE方式,用于修改某些列,其语法格式:
ALTER TABLE [表名] CHANGE <原列名> TO <新列名><新列的数据类型>
(4)MODIFY方式,用于修改某些列的数据类型,其语法格式:
ALTER TABLE [表名] MODIFY [列名] [数据类型]
用alter database语句修改数据库
--1将名为"例二数据库"的数据库改名为"例七数据库"
显示代码打印
alter database 例二数据库
modify name = 例七数据库
或
显示代码打印1 exec sp_renamedb '例二数据库','例七数据库'
--2为"例六数据库"增加一个数据文件
显示代码打印
alter database 例六数据库
add file (
name=增加的数据文件,
filename='c:\dbtest\例六数据库增加的数据文件ndf'
)
--3为"例六数据库"增加一个日志文件
显示代码打印
alter database 例六数据库
add log file (
name=例六增加的日志文件,
filename='c:\dbtest\例六增加的日志文件ldf',
size=3MB,
maxsize=50MB,
filegrowth=10%
)
--4将"例六数据库"名为"增加的数据文件"的数据库文件改名
显示代码打印
alter database 例六数据库
modify file (
name=增加的数据文件,
newname=例六数据文件,
filename='c:\dbtest\例六数据文件ndf'
)
--5修改"例六数据库"的排序规则
显示代码打印
alter database 例六数据库
collate Chinese_PRC_CI_AS_KS
--6在"例六数据库"里删除一个数据文件
显示代码打印
alter database 例六数据库
remove file 例六数据文件
--7在"例六数据库"里添加一个文件组
显示代码打印
alter database 例六数据库
add filegroup 例十三文件组
--8在"例六数据库"里为一个文件组改名
显示代码打印
alter database 例六数据库
modify filegroup 例十三文件组
name=例十四文件组
--9在"例六数据库"里添加一个数据文件到一个文件组,并将该文件祖设为默认文件组。
显示代码打印
--alter database一次只能修改数据库的一个属性
alter database 例六数据库
add file (
name=例十五数据文件,
filename='c:\dbtest\例十五数据文件ndf'
)
to filegroup 例十四文件组
go
alter database 例六数据库
modify filegroup 例十四文件组 default
go
--10在"例六数据库"里删除"例十四文件组"。
显示代码打印
alter database 例六数据库
modify filegroup [primary] default
--将primary文件组设为默认文件组
go
alter database 例六数据库
remove file 例十五数据文件
--删除"例十四文件组"中包含的"例十五数据文件"
go
alter database 例六数据库
remove filegroup 例十四文件组
--删除"例十四文件组"
go
--11将"例六数据库"里一个文件组设为只读的。
显示代码打印
alter database 例六数据库
add filegroup 例十七文件组
--先添加一个文件组,因为primary文件组不能设为只读
go
alter database 例六数据库
add file (name=例十七数据文件,
filename='c:\dbtest\例十七数据文件ndf')
to filegroup 例十七文件组
--添加一个文件到文件组中,因为空文件组不能设为只读
go
alter database 例六数据库
modify filegroup 例十七文件组 read_only
--将文件组设为只读
go
--12将"例六数据库"设为只有一个用户可访问
显示代码打印
alter database 例六数据库
set single_user
--13设置"例六数据库"可自动收缩
显示代码打印
alter database 例六数据库
set auto_shrink on
alter system和alter database的区别如下:
alter system:动态的改变实例的属性(参数),也就是对实例的更改,一般是逻辑上的。
比如:alter system set db_cache_size
alter database: 数据文件、表空间、日志文件等等,和物理上的文件有关系的一些变更,也就是对数据库的更改,一般改变的是物理上的,通过alter database *** 作时会触发controlfile header和其他一些物理文件头信息的变化
比如 :alter dtabase rename datafile
总结:
ALTER SYSTEM 改变的是逻辑上的,看不见的。
ALTER DATABASE 改变的是物理上的,看得见的。
use
master
go
create
database
test1
on
(
name
=
test1dat1,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\t1dat1ndf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb
)
go
alter
database
test1
add
file
(
name
=
test1dat2,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\t1dat2ndf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb
)
go
b
向数据库中添加由两个文件组成的文件组
下例在示例
a
中所创建的
test1
数据库中创建一个文件组,并将两个
5
mb
的文件添加到该文件组。然后下例将
test1fg1
设置为默认文件组。
use
master
go
alter
database
test1
add
filegroup
test1fg1
go
alter
database
test1
add
file
(
name
=
test1dat3,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\t1dat3ndf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb),
(
name
=
test1dat4,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\t1dat4ndf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb)
to
filegroup
test1fg1
alter
database
test1
modify
filegroup
test1fg1
default
go
c
向数据库中添加两个日志文件
下例向数据库中添加两个
5
mb
大小的日志文件。
use
master
go
alter
database
test1
add
log
file
(
name
=
test1log2,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\test2logldf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb),
(
name
=
test1log3,
filename
=
'c:\program
files\microsoft
sql
server\mssql\data\test3logldf',
size
=
5mb,
maxsize
=
100mb,
filegrowth
=
5mb)
go
d
从数据库中删除文件
下例将示例
b
中添加到数据库
test1
中的一个文件删除。
use
master
go
alter
database
test1
remove
file
test1dat4
go
e
更改文件
下例将示例
b
中添加到数据库
test1
中的一个文件增加大小。
use
master
go
alter
database
test1
modify
file
(name
=
test1dat3,
size
=
20mb)
go
弄了一个例子,你看看,希望能帮助你
以上就是关于SQL server怎样使用ALTER 语句修改字段名全部的内容,包括:SQL server怎样使用ALTER 语句修改字段名、创建数据库时如何修改数据库db、alter index语句如何使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)