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 ...
随机推荐
- CentOS 6.5 安装Oracle 11G R2问题列表
1. 文章中写vi/etc/profile #这个很重要 if [ $USER ="oracle" ]; then if [ $SHELL="/bin/ksh&q ...
- PHP的字符串函数
1.字符串的连接 字符串可以使用字符串连接符(.)来连接 常见的用途是建立大块的HTML字串代码,赋值号 (=) 连接符 (.) 可以被简写合并为 (.=) 符号 2.在字符串中使用变量 这个功能 ...
- 第六章 springboot + 事务(转载)
本篇博客转发自:http://www.cnblogs.com/java-zhao/p/5350106.html 在实际开发中,其实很少会用到事务,一般情况下事务用的比较多的是在金钱计算方面. myba ...
- AngularJs自定义指令详解(5) - link
在指令中操作DOM,我们需要link参数,这参数要求声明一个函数,称之为链接函数. 写法: link: function(scope, element, attrs) { // 在这里操作DOM} 如 ...
- REDIS源码中一些值得学习的技术细节01
redis.c/exitFromChild函数: void exitFromChild(int retcode) { #ifdef COVERAGE_TEST exit(retcode); #else ...
- ASP.NET中的XML和JSON
一.DOM简介 1.XML 定义:XML是一种跨语言.跨平台的数据储存格式 2.什么是DOM DOM(document object model)文档对象模型:是一种允许程序或脚本动态的访问更新文档内 ...
- jsp文件引入js文件的方式(项目部署于web容器中)
在页面中引入javascript文件的方式是多种多样的,本文介绍两种. 通过<script>标签插入js文件 通过这种方式引入的js,写对js文件和jsp文件的路径很重要.下面给出一个项目 ...
- ServletContext获取的方法
ServletContext 代表当前web应用 如何获取ServletContext对象 ServletConfig对象中维护了ServletContext对象的引用,可以通过以下方式获得 Ser ...
- Fire
Fire 分析: 首先,明确题意:b1,b2,--,bn 交换为b2,--,bn,b1,但这并不是意味着只能从b1开始交换,(这点从样例中可以看出),并且也不意味着交换的必须是连续的一串,可以是几个单 ...
- C# JS 单例
单例模式的三个特点: 1,该类只有一个实例 2,该类自行创建该实例(在该类内部创建自身的实例对象) 3,向整个系统公开这个实例接口 模式1: class Singleton { //私有,静态的类自身 ...