SQL基础篇——如何搭建一个数据库
特别提醒:所有的新建数据库,表,行,列都可以通过对象资源管理器操作,下面所讲的为查询操作方法
一、新建数据库
使用CREATE DATABASE语句建立数据库:
新建查询--
CREATE DATABASE pay
ON PRIMARY
(
NAME= 支出_DATA,
FILENAME='E:\支出_DATA.mdf', --创建的mdf文件名称
SIZE=5MB, --初始大小5MB
MAXSIZE=10MB, --最大文件大小10MB
FILEGROWTH = 1MB --超过5MB之后以1MB的速度增长
) LOG ON
(
NAME = 支出_LOG,
FILENAME = 'E:\支出_LOG.ldf',
SIZE = 2MB,
MAXSIZE = 10MB,
FILEGROWTH = 1MB
)
用这个方法创建数据库时,这个计算机的studio版本需要重新连接服务器或者直接刷新发现数据库在数据库列表中!
对于第2行中的语法,http://www.alixixi.com/program/a/2008020937834.shtml中说得不错:
在CREATE TABLE的语法中有这样一句可选语法项目:
[ ON { filegroup | DEFAULT } ]
用来指定存储表的文件组。
如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果指定 DEFAULT,或者根本未指定 ON 参数,则表存储在默认文件组中。
(DEFAULT 并不是关键字。DEFAULT 是默认文件组的标识符并需对其进行定界,如 ON "DEFAULT"、ON [DEFAULT]。)
ON [PRIMARY]是表示表是建立在主文件组上。PRIMARY表示主文件组。如果没有指定默认文件组,则主文件组是默认文件组,ON [PRIMARY]也可以省略掉了。
二、在数据库中新建表(顺便把列一起建了)
普通的新建:
USE pay; --使用名字为pay的数据库
CREATE TABLE my_friends --创建一个名为my_friend的表
(
last_name VARCHAR(10), --在表内新增列 last_name
first_name VARCHAR(6) --在表内新增列 first_name
);
如果我要创建一个在输入信息的时候不能忽略的列时,我需要:
CREATE TABLE my_friends --创建一个名为my_friend的表
(
last_name VARCHAR(10) NOT NULL, --在表内新增列 last_name
first_name VARCHAR(6) NOT NULL --在表内新增列 first_name
);
这样的话,在INSERT 的时候就一定得输入last_name和first_name的信息,否则会报错!
如果我要创建一个列,那一列的默认值不是NULL,而是自己设定的备用值(在给表插入行之后才会出现single哦!而且要把single改成其他的值,按照一般的赋值即可!)
CREATE TABLE my_friends --创建一个名为my_friend的表
(
last_name VARCHAR(10) NOT NULL, --在表内新增列 last_name
first_name VARCHAR(6) NOT NULL, --在表内新增列 first_name
status CHAR(30) DEFAULT single
);
一旦建立my_friend的表,再次建立my_myfriend的表时会显示错误,所以表是不会覆盖的!那么问题来了,如果我要在表中增加新的列应该怎么办呢?
当然,可以删除掉已经建好的表,重新建立一个新的表,在新建的时候把你想加入的列写到()里面就好了,删除表的语句怎么写呢?
DROP TABLE my_friends;
请注意:一旦删除里面的数据就随风而逝了!人死不能复生啊......
三、向表增加行(往表中插入数据)
INSERT INTO my_friend
(last_name,phone)
VALUES
('cake',366413454);
也可以省略所有的列名。这样做时一定要添上所有的数据值,而且输入的数据也要和表中的列顺序完全相同
INSERT INTO my_friends
VALUES
('cake','zhishi',366413454);
没有赋值的信息,以NULL的形式存在。
NULL的理解:NULL不等于0,也不等于空字符串(''在两个单引号内,什么都没有的值)。也不等与另一个NULL。两个NULL不可以放在一起比较,因为NULL代表着未定义的值!可以这样去理解:每个NULL代表着一个未打开的盒子,盒子里面装着什么东西都不知道,自然就无法比较啦!
我想看看我输入的信息,怎么看呢?命令如下:
SELECT * FROM my_friend;
* 号代表选择所有的内容
SQL基础篇——如何搭建一个数据库的更多相关文章
- sql server 复制表从一个数据库到另一个数据库
sql server 复制表从一个数据库到另一个数据库 /*不同服务器数据库之间的数据操作*/ --创建链接服务器 exec sp_addlinkedserver 'ITSV ', ' ', 'SQL ...
- 聊聊数据库~3.SQL基础篇
上篇回顾:聊聊数据库~SQL环境篇 扩展:为用户添加新数据库的权限 PS:先使用root创建数据库,然后再授权grant all privileges on 数据库.* to 用户名@"%& ...
- sql基础篇
再跟SQL谈一谈--基础篇 1.简介 2.DDL & DML 3.SELECT ①DISTINCT ②WHERE ③AND & OR ④ORDER BY 4.INSERT 5.UP ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- SQL基础篇(MICK)
SQL基础教程(Mick) 数据库和SQL C:\PostgreSQL\9.5\bin\psql.exe -U postgres -d shop 数据库的基本概念 数据库(DB):将大量数据保存起来, ...
- 通过 SQL Server 视图访问另一个数据库服务器表的方法
今天项目经理跑过来对我大吼大叫说什么之前安排让我做一大堆接口为什么没做,我直接火了,之前明明没有这个事情…… 不过事情还要解决,好在两个项目都是用的sqlserver,可以通过跨数据库视图来快速解决问 ...
- SQL基础篇---基本概念解析
1.数据库database:保存表和其他相关SQL结构容器(一般是一个文件或者一组文件) 2.SQL (Structared Query Language):是一种专门用来与数据库沟通的语言,是一种结 ...
- python框架之Flask基础篇(二)-------- 数据库的操作
1.flask连接数据库的四步: 倒入第三方数据库扩展包:from flask_sqlalchemy import SQLAlchemy 配置config属性,连接数据库: app.config[&q ...
- SQL必知必会|SQL基础篇
了解SQL DBMS的前世今生 SQL是如何执行的 DDL语法 关于外键的性能问题? 是否使用外键确实会有一些争议.关于外键的使用: 首先,外键本身是为了实现强一致性,所以如果需要正确性>性能的 ...
随机推荐
- 通过weka.jar包来进行数据预处理
前言:注意首先要将weka.jar包加载到相应的路径中去.程序中的数据也是用的weka自带的数据. 扩展:eclipse添加jar包的操作方法: 打开eclipse ,在对应的工程下右击,选择Buil ...
- POJ1979 Red and Black (简单DFS)
POJ1979 Description There is a rectangular room, covered with square tiles. Each tile is colored eit ...
- python(二)拾遗
1.int 系统内部自动执行的 a=123>>>>a=int(123)>>>>a=_init_(123) 外部调用 a 2 b=a.bit_length ...
- AD转换精度的计算
声明原文来源于:http://wenku.baidu.com/view/1e6d8f3083c4bb4cf7ecd1c2.html 讨论AD转换分辨率的算法(zt) (1)在总长度为5米的范围里,平均 ...
- 洛谷P1461 海明码 Hamming Codes
P1461 海明码 Hamming Codes 98通过 120提交 题目提供者该用户不存在 标签USACO 难度普及/提高- 提交 讨论 题解 最新讨论 暂时没有讨论 题目描述 给出 N,B 和 ...
- Centos linux php扩展安装步骤
使用phpinfo()函数输出PHP信息,然后找到Configuration File (php.ini) apachectl 其设计意图是帮助管理员控制Apache httpd后台守护进程的功能. ...
- 感受机房管理化繁为简-新款KVM使用心得
感受机房管理化繁为简-新款KVM使用心得 一. 背景 随着网络应用的不断增多,各地机房服务器数量也随之增加,利用多传统主机切换器的方式已经无法满足目前这种区域广.设备多人员紧缺的现状,而且即使是使用了 ...
- openldap安装配置
http://www.jslink.org/linux/openldap-ssl-sssd.html http://www.unix-power.net/centos7/openldap.html h ...
- 连接器|网络滤波连接器|电脑连接器|RJ45变压器-华联威电子有限公司
连接器|网络滤波连接器|电脑连接器|RJ45变压器-华联威电子有限公司
- 跨域请求之JSONP 三
script请求返回JSON实际上是脚本注入.它虽然解决了跨域问题,但它不是万能的. 不能接受HTTP状态码 不能使用POST提交(默认GET) 不能发送和接受HTTP头 不能设置同步调用(默认异步) ...