SQL入门经典(四)之创建和修改数据表
本章主要讲如何使用脚本创建数据库;如何使用脚本创建表;如何删除对象和修改对象.
CREATE 语句:CREATE <object type> <onject name>
创建数据库基本语法:CREATE DATABASE <database name> ON [PARIMARY] ( [NAME=<'logical file name'>,][FILENAME='<file name>',][SIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][MAXSIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][FILEGROWTH=<size in kilobytes,megabytes,gigabytes,or terabayes>])
LOG ON ( [NAME=<'logical file name'>,][FILENAME='<file name>',][SIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][MAXSIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][FILEGROWTH=<size in kilobytes,megabytes,gigabytes,or terabayes>])
[CONTAINMENT=OFF|PARTIAL][COLLATE<collation name>][FOR ATTACH[WITH <service broker>][FOR ATTACH_REBUILD_LOG|WITH DB_CHAINING ON|OFF|TRUSTWORTHY ON| OFF]] [AS SNAPSHOT OF< source dateabase name>][;]/*红色部分数据是可选SQLSERVER支持的数据后面不做介绍*/
在一一分析创建语法:
ON主要用于2个方面一个是定义存储数据库和日记文件位置。还可以看到primary-这意味着物理上存储数的主文件组。也可以将数据存储到所谓的附属文件组里这里超出所写范围了。
NAME 定义文件的逻辑名称-即sql内部该引用名称.
FILENAME 定义文件组的在实际的操作系统的磁盘上物理路径,本章建议数据文件mdf结尾。日记ldf结尾,附属文件ndf结果。
SIZE 数据库初始值大小,可以KB,MB,GB,TB。
MAXSIZE 数据库最大大小。比SIZE要大
FILEGROWTH 数据库快满的时候,每次自动增长的数值。可以是KB,MB,GB,TB,还有百分比。增长之后数据库最大值不会超过MAXSIZE数值。
来试一试构建数据库

CREATE DATABASE panda
ON
(
name='panda.mdf',
filename='e:\test\panda\panda.mdf',
size=100MB,
maxsize=1GB,
filegrowth=50MB
)
log on
(
name='panda_log.ldf',
filename='e:\test\panda\panda_log.ldf',
size=100MB,
maxsize=1GB,
filegrowth=50MB
)

在我们执行下 exec sp_helpdb panda (查看创建表的信息)

创建数据表的基本用法:CREATE TABLE <table name> (<column name> <data type> [[DEFAULT< constant expresstion>]|[INDENTITY[(seed,increment)[NONT FOR REPLICATION]]|[NULL|ISNULL]]][,.......]).
列太多无法可以写完,因为键和约束那些都可以写到表里面。下一篇博客就开始介绍约束和键。
试一试:

CREATE TABLE panda_test
(
ID int identity(1,1) primary key,
name nvarchar(20) not null,
age bit default(1) not null,
code int check(code>1) not null
)

运行下exec sp_help panda_test

ALTER 语句:
基本语法ALTER <object type> <object name>
alter database :

alter database panda
modify file
(
name='panda.mdf',
size=200MB,
maxSize=2GB
)

在执行一次exec sp_helpdb panda 得到下列结果,file 一定要name这个属性,告诉修改是那个文件。

Alter table:

alter table panda_test
alter column age int --修改age值(如果有键和约束是无法修改)
alter table panda_test
add test nvarchar(30) not null--添加值 alter table panda_test
drop column <column name>有约束无法删除。

运行,测试结果:exec sp_help panda_test

先写到这里,修改表还有很多。等下一篇博客在详细将修改,删除,添加表约束和键这些。
DROP: DROP <object type> <object name>删除对象,如:drop database <database name>,drop table <table name> ,drop view <view name>
SQL入门经典(四)之创建和修改数据表的更多相关文章
- SQL Server 创建和修改数据表
一.CREATE语句(创建) 1.创建DataBase 1.CONTAINMENT SQL Server 2012 新功能 , 默认值是OFF .(太高级 书上也没有详细介绍). 2.ON ON用于两 ...
- SQL SERVER 2012 第五章 创建和修改数据表 の CREATE语句
CREATE <object type> <object name> CREATE DATABASE <database name> 比较完整的语法列表: 日志文件 ...
- SQL SERVER 2012 第五章 创建和修改数据表 の SQL SERVER中的对象名
[ServerName.[DataBaseName.[SchemeName.]]]ObjectName 服务器名,数据库名,模式名,对象名 其中模式是一个新出的坑爹的东西.
- sql 入门经典(第五版) Ryan Stephens 学习笔记 (第一,二,三,,四,五章)
SQL - Structured Query Language (结构化查询语言) 1/ SQL 命令的类型 : 数据定义语言: DDL 数据操作语言: DML 数据查询语言: DQL 数据控制语言 ...
- SQL入门经典(十) 之事务
事务是什么?事务关键在与其原子性.原子性概念是指可以把一些事情当作一个执行单元来看待.从数据库角度看待.他是指应该全部执行或者全部不执行一条或多条语句的最小组合.当处理数据时候经常确保一件事发生另一件 ...
- 《SQL入门经典》总结
<SQL入门经典>这本书从考试前就开了个头,一直到前两天才看完,拉的战线也够长的.放假来了,基本上什么内容都不记得了.好不容易看完了,就赶紧总结一下吧! 该书分为两大部分,第一部分是第1~ ...
- sql server2008中怎样用sql语句创建数据库和数据表
这是简单用代码实现创建数据库和数据表的sql语句,如下: --调用系统数据库-- use master go /***防止你要创建的数据库同名,先把它删除掉****/ if Exists(select ...
- 数据库之mysql篇(3)—— mysql创建/修改数据表/操作表数据
创建数据表:create table 数据表名 1.创建表规范 create table 表名( 列名 数据类型 是否为空 自动排序/默认值 主键/外键/唯一键, 列名 数据类型 ...
- 【spring boot】spring boot 2.0 项目中使用mysql驱动启动创建的mysql数据表,引擎是MyISAM,如何修改启动时创建数据表引擎为【spring boot 2.0】
默认创建数据表使用的引擎是MyISAM 2018-05-14 14:16:37.283 INFO 7328 --- [ restartedMain] org.hibernate.dialect.Dia ...
随机推荐
- 推荐大家使用的CSS书写规范、顺序
写了这么久的CSS,但大部分前端er都没有按照良好的CSS书写规范来写CSS代码,这样会影响代码的阅读体验,这里总结一个CSS书写规范.CSS书写顺序供大家参考,这些是参考了国外一些文章以及我的个人经 ...
- iOS.DistributionApp.1-mobile-provision-file[draft]
.mobileprovision file 0. .mobileprovision file的作用 .mobileprovision file作用以及扮演的角色 1. 如何删除旧的.mobilepro ...
- 第八章 springboot + mybatis + 多数据源(转载)
本篇博客转发自:http://www.cnblogs.com/java-zhao/p/5413845.html 在实际开发中,我们一个项目可能会用到多个数据库,通常一个数据库对应一个数据源. 代码结构 ...
- 第二章 jQuery数组和字符串
章节内容: 1.利用数组在列表中显示名字 (1)利用数组显示名字列表--join()方法 (2)从数组中获取名字并追加到有序列表--each()方法 (3)利用HTML元素创建数组和计算数组长度--g ...
- 关于安装sql2012出现的netfx3功能问题
这个问题需要下载framework3.5即可继续正常安装,所以说低版本的framework也是有必要安装的
- mysql主从不一致解决方法
方法一:忽略错误后,继续同步 该方法适用于主从库数据相差不大,或者要求数据可以不完全统一的情况,数据要求不严格的情况 stop slave; #表示跳过一步错误,后面的数字可变 set global ...
- python文件、数据库读写编码的问题
读写utf-8文件 fh = open(file_name, 'r', encoding = 'UTF-8') 读写数据库utf-8格式 connect = pymysql.connect(host= ...
- java中获取路径的几种方式
总是忘记, 备份一下,方便下次用. 第一种: File directory = new File("");//参数为空 String courseFile = directory. ...
- JS中this关键字详解
本文主要解释在JS里面this关键字的指向问题(在浏览器环境下). 阅读此文章,还需要心平气和的阅读完,相信一定会有所收获,我也会不定期的发布,分享一些文章,共同学习 首先,必须搞清楚在JS里面,函数 ...
- 拒绝try.catch泛滥,学习委托有感
读了一位博友关于使用委托避免重复的try.catch的随笔(原文地址:http://www.cnblogs.com/foolishfox/archive/2010/07/30/1788416.html ...