第15课-数据库开发及ado.net-数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库
第15课-数据库开发及ado.net
数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库
1、 学习方法
2、 多涨见识
3、 比自己强的人一起,学习更强;比自己更聪明的人在一起,学习变得更聪明。
数据库Database 数据的仓库 DB 仓库管理员DBA
数据库的特点:海量存储、查找速度快、并发性问题控制、安全性、数据完整性。
DBMS(Database Management System 数据库管理系统)(*.mdf)
MYSQL、MSSQLServer、DB2(大型)、Oracle(大型)、Access(文件)、SQLite(极其轻量级数据库)、Sybase。
数据库中的概念:
Table(表):关系数据库中的[关系]指的就是表。
列(Column)、字段(Field)、行(Row)
对数据格式化,进行查找。
一个对象表示一行数据。(虚构成类,NEW一个对象,就一行数据。)
一张表可以表示一个集合。List
思考问题:不允许表中有重复的记录。
主键(Primary Key)数据库的一种约束。
主键是数据列的唯一标识,主键有两种选择策略:业务主键和逻辑主键。(推荐用逻辑主键:自动编号)
选择什么样的列作为主键:
- 不能为空的列
- 不重复的列
- 比较稳定的列
- 可选择多列为一个组合主键(建议尽量选择单列作为主键)
表间关联、外键(Foreign Key)冗余
实例:部门表的主键是:部门ID。员工表的主键是:成员ID,在员工表中有一列是引用部门表中的主键(部门ID),则我们称这列为“外键”,则员工表为外键表,部门表为主键表。
启动数据库(MSSQLSERVER)
1、 启用服务。在运行中输入:services.msc,然后在选择要启用的服务启动。
(net start/stop mssqlserver)
2、 打开ssms.Sql Server Management Studio 管理工具。(注意:这个工具仅仅是一个可视化的管理界面而已,并不是真正的数据库核心部分。)
数据库身份验证方式
当无法使用SQL server身份验证的时候的解决办法
1、尝试使用Windows身份验证方式登录
2、 选择“实例”(是一套数据库)→右键→属性→安全性→服务器身份验证→SQL server和windows 身份验证模式。
3、 重启数据库服务。(否则第二步设置无效:net start/stop mssqlserver)
4、 继续检查“实例”(是一套数据库)下的 安全性→登录名→sa(要使用的某个账户)是否可以使用。
如果当前帐号被禁用(有一个红色向下标志),则需要启用该账户。
账户名→右键→属性→状态→登录→启用。
5、 修改账户密码:
账户名→右键→属性→常规→修改密码→确定。
局域网使用数据库:(1433端口)
配置工具→SQL Server网络设置→“实例”协议→TCP/IP协议→启用
通过设计器建库-建表
MSSQLServer的每个数据库包含:
一个主数据文件(*.mdf)必须
一个事务日志文件(*.ldf)必须
可以包含:任意多个次要数据文件(*.ndf)和多个日志文件(*.ldf)
问题:当插入有误的时候,ID直接跳过,直接有序号5.
数据库中的数据类型-分离附加数据库:
Image类型=无限制的varbinary(max) 二进制流 可用来存储图像
char(10) 固定长度数据类型,最多只能存储10个。(例:性别,男女)
varchar(10)可变长度数据 类型,最多只能存储10个。(例:用户名)
nchar(10)
char(10) 【如果数据库的排序规则不是中文,则会出现乱码】
使用char存储中文字符可能产生乱码,则使用nchar则可以保证永远正常显示。
char(1) 一个字符占一个字节(例:“a”,“1”)半个中文字
char(2) 占用俩个字节(例:“aa”,“中”)
nchar(1)=char(2) 占用俩个字节(例:“a ”,“中”)
char()跟varchar() 最大长度是8000
nchar()跟nvarchar() 最大长度是4000
dateTime 年月日时分秒
date 年月日
time 时分秒
bit 布尔类型
第15课-数据库开发及ado.net-数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库的更多相关文章
- 第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获得连接字符串
第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获 ...
- 第20课-数据库开发及ado.net 可空值类型,资料管理器,多条件查询,Case
第20课-数据库开发及ado.net 可空值类型,资料管理器,多条件查询,Case SqlHelper using System; using System.Collections.Generic; ...
- 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据
第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...
- 第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all; Select 列 into 新表;字符串函数;日期函数
第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all; ...
- 第16课-数据库开发及ado.net-数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍
第16课-数据库开发及ado.net 数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍 SQL语句入门(脚本.命令) SQL全名是结构化查询语言(Structur ...
- 关系型数据库——主键&外键的
一.什么是主键.外键: 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键 比如 学生表(学号,姓名,性别,班级) 其中每个学 ...
- 数据库开发及ADO.NET
大部分数据库都需要数据库服务器才能运行. Catalog(分类)又叫做数据库DataBase Table(表)不同类型的东西放到不同的区域中,将这种区域叫做表. 列(Column)字段Field 主键 ...
- SQL从入门到基础 - 01 数据库开发及ADO.Net
一.数据库概述 1. 用自定义文件格式保存数据的劣势:并发性差,查找数据的速度差. 2. DBMS(DataBase Management System数据库管理系统)和数据库.平时谈到“数据库”的含 ...
- 【数据库开发】Redis key-value内存数据库介绍
Redis是一个开源的,先进的 key-value 存储可用于构建高性能,可扩展的 Web 应用程序的解决方案.Redis官方网网站是:http://www.redis.io/,如下: Redis 有 ...
随机推荐
- NLog配置JsonLayout中文输出为unicode问题
日志输出现要改为json格式,网上查询layout配置为JsonLayout就可以了,结果发现输出中文为unicode编码,看很多文章说配置encode="false"就可以了,结 ...
- Fiddler工具使用介绍二
在上一篇中介绍了Fiddler的基本使用方法.通过上一篇的操作我们可以直接抓取浏览器的数据包.但在APP测试中,我们需要抓取手机APP上的数据包,应该怎么操作呢? Andriod配置方法: 1)确保手 ...
- OCP新题,2019题库出现大量新题,062-第22题
choose two Your database is running in ARCHIVELOG mode. You want to take a consistent whole database ...
- 19_python_反射
一.内置函数(补充) 1.issubclass() -- 方法用于判断参数 class 是否是类型参数 classinfo 的子类. 语法格式:issubclass(class, ...
- jsp的两个include了解
在jsp中三大指令(page -- include -- taglib)中有一个 include 然后再三个动作标签中(include -- forward -- param)中也有一个includ ...
- Spring static 静态属性注入
<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> &l ...
- Selenium3 + Python3自动化测试系列四——鼠标事件和键盘事件
一.鼠标事件 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供. ActionChains 类提供了鼠标操作的常用方法. ActionChains 类的成 ...
- linux下利用dd命令测试磁盘读写速度
在Linux中,dd命令用于读取.转换和输出数据,它可从标准输入或文件中读取数据并输出到指定文件或标准输出中.该命令使用参数如下: 其中”=“后面的为设置的参数 If = <文件名> : ...
- 关于 OpenIdConnect 认证启用 HTTPS 回调 RedirectUri 不生效问题
在搭建 IdentityServer 服务端后,我们尝试使用了 OIDC(OpenID Connect) 的中间件来代替了原先的 Session 系统认证方式,起初采用的是 HTTP 协议,一切都没有 ...
- [个人项目] echarts 实现数据(tooltip)自动轮播插件
前言 最近, 工作中要做类似这种的项目. 用到了百度的 echarts 这个开源的数据可视化的框架. 因为投屏项目不像PC端的WEB, 它不允许用户用鼠标键盘等交互. 有些图表只能看到各部分的占比情况 ...