• 数据库基本掌握 20140902


    一、数据类型

    1.整数数据类型: int(常用,4字节) smallint(2字节) tinyint(微小整数) bigint(8字节)

    2.浮点数据类型: real  float(常用)  decimal(宽度,精度)

    例:129.5(5,1)--值宽度为5,精度为1;宽度是值长度,包含小数点;精度是小数点后值的位数.

    3.逻辑数据类型:  bit (计算机默认"0"为false,"1"为true.)

    4.字符数据类型:

    varchar(常用):8000字节,长度可变.

    char:8000字节,长度固定不变,如输入之内容不足会用空格补齐.适用于像身份证、银行卡号这样固定长度的值使用.

    text:无字节大小限制, 用于存储大量文本数据,但查询检索较慢. 适用于像写博客这样大量文字类型的数据使用.

    nvarchar:4000字节.

    nchar:4000字节.

    5.日期和时间数据类型:

    datetime(常用):最小值--1753 年1 月1 日零时;最大值--9999 年12 月31 日23 时59 分59 秒. 

    smalldatemall :最小值-- 1900 年1 月1 ;日最大值-- 2079 年6 月6 日.

    PS:如输入超出范围值,将会弹出对话框显示"溢出……".

    6.货币数据类型:money (特点:金融涉及到用万元、亿元做单位时,小数点后位数会比较长.)

    7.二进制数据类型: (如需要对列表内容进行保密可选择二进制类型,例:银行卡密码.)

    image(常用,为防止数据不兼容):可存储视频、声音及图片.

    binary:储存范围较小.  

    8.文本和图形数据类型:text  image 

    9.列属性:

    Null:空值.

    Not Null: 不能为空值.

    PS:列属性常规中设置"允许Null值"为"否",即是设置列不能为空值.列数据类型为"int"前提下,在列属性中设置"标识范围"为"是",即设置列为自增长.

    自增长列:按照输入值内容递增,但输入错误报错后会自动默认删除出错列,新建一列.如图:

    1)当Firm列设置为不能为空值时

    2)Firm列中为NULL值时系统则报错,提示不能提交12行中的信息.

    3)将数据修改正确后自增长列则自动生成新一列,报错几次则跳几列,第11行后报错12次生成第23行.

    二、约束. 

    目的:是保持数据库完整性、准确性的一种方法,定义了表列中的数据的限制条件,使数据表现的更准确更完整.

    1. 主关键字约束  Primary Key Constraint  --保证实体完整性

    主键特点:

    1)主键列内容不能重复--如重复两行内容均不可删除,因为计算机不知道要删除相同内容的哪一行(代码输入可删).

    2)主键默认不可有空值

    3)主键列默认自动排序

    4)主键列是表中唯一能区分每一行数据的一列

    5)一个表里只能有一个主键

    6)主键可以由多列组成

    2.外关键字约束   Foreign Key Constraint  --保证引用完整性

    主表与从表的关系:主表的主键约束从表的外键,主表作用是约束从表,从表则是被主表约束.

    新建主表与从表关系图的方法:

    1)右键点击数据库关系图,选择新建数据库关系图,添加表;右键点击从表,选择设计;右键点击外键列,选择关系;在表和列规范后点选"…";选择设置主键表名、主键、外键表名、外键,关系名根据需要填写;点击确定即可生成数据关系图.

    →  → →

      → →

    2)右键点击数据库关系图,选择新建数据库关系图,添加表;主表主键向外表外键拖拽即可出现上图第4、5个表格,设置,即可生成关系图.

     

    3.惟一性约束    Unique Constraint 

    惟一键(候选键):虽不是主键但也同样不允许重复.

    与主键的区别:

    1)惟一键可以为空.

    2)不会自动排序.

    4.检查约束    CheckConstraint  --判断填写值是否满足某个条件.

    5.缺省约束    Default Constraint --如不填写值默认填写什么值.

    三、语法

    1.启动服务器: net start sqlserver

       关闭服务器:net stop sqlserver
    2.新建查询: create database MyDB

    3.创建数据:
    create database MyDB
    on primary
    (
     Name=MyDB,
     FileName="D:MyDB.MDF"
    ),    --创建主数据文件叫MyDB,放在D盘中.
    (
     Name=MyDB1,
     FileName="E:MyDB1.NDF"
    ),   --创建次数据文件叫MyDB1,放在E盘中.
    log on
    (
     Name="MyDB_Log",
     FileName="E:MyDB.Log"
    )    --创建MyDB的日志文件,放在E盘中.

    4.打开数据库
    use MyDB
    use master

    5.修改数据
    alter database MyDB  --修改MyDB数据库
    add file --添加file文件
    (
     Name="MyDB2",   --创建次数据文件叫MyDB1.

     FileName="C:MyDB2.ndf"   --将MyDB次数据文件放在C盘中.
    )

    6.删除数据库

    drop database mydb

    7.查看数据库的信息
    sp_helpdb mydb

    8.重命名数据库
    sp_renamedb  'NewMyDB','MyDB'

    9.创建表
    create table Login
    (
     UserName varchar(20) primary key, --建主键.
     Password varchar(20) not null,  --不能为空值.
     Name varchar(20) unique,  --建惟一键.
     Sex bit default 1,  --建默认约束(缺省约束).
     Birthday datetime check(birthday>'1900-1-1') --建检查约束.
    )

    10.修改表
    alter table Login Add Money float  --添加
    alter table login drop column Money  --删除
    alter table Login alter column Money Real  --修改

    11.删除表
    drop table Login

     
  • 相关阅读:
    no module name cx_oracle 的解决方法
    开通博客
    普通用户启动Hadoop格式化namenode出现无法创建目录的问题
    改写文件权限时出现问题___2
    suse添加普通用户赋予root所有权限时出现问题___1
    suse系统vim未正常退出产生的问题(can't write viminfo file /home/zhaoy/.viminfo)
    intellij idea根据mvn仓库添加或改变scala-sdk
    git拉项目和上传项目时遇到的一些问题
    简单的clone项目fromGitHub
    初始机器学习
  • 原文地址:https://www.cnblogs.com/DORCASQING/p/3951908.html
Copyright © 2020-2023  润新知