第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 有 ...
随机推荐
- AlexNet详解3
Reference. Krizhevsky A, Sutskever I, Hinton G E. ImageNet Classification with Deep Convolutional Ne ...
- collaborative filtering协同过滤
每次我想看电影的时候,都会去问我的朋友,小健.一般他推荐的电影,我都比较喜欢.显然不是所有人都有小健这样的能力.因为我碰巧和小健有类似的品味. 这个生活中的经验,实际上有着广泛的用途. 当系统需要为某 ...
- python操作excel及json
有一个存着学生成绩的文件:stuscore.txt,里面存的是json串,json串读起来特别不直观,需要你写代码把它都写到excel中,并计算出总分和平均分,json格式如下: { ":[ ...
- Unity 环境区域网格化
在使用A星算法和物体布局的过程中,常常会使用的网格的概念,即建立在网格的基础上,会使得游戏的相关编程变得简单的多. 格子的代码: using System.Collections; using Sys ...
- pycharm光标变成黑框,恢复成竖线
pycharm光标变成黑框,如下图所示 解决办法: 按外接键盘上的Insert键,即可恢复.
- Linux系统日志分析与管理(14)
当你的 Linux 系统出现不明原因的问题时,你需要查阅一下系统日志才能够知道系统出了什么问题了,所以说了解系统日志是很重要的事情,系统日志可以记录系统在什么时间.哪个主机.哪个服务.出现了什么信息等 ...
- <转>PHP中正则表达式函数
PHP中的正则表达式函数 在PHP中有两套正则表达式函数库.一套是由PCRE(Perl Compatible Regular Expression)库提供的,基于传统型NFA.PCRE库使用和Perl ...
- MySQL修改root密码的方法总结
方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass ...
- Shell - 简明Shell入门13 - 用户输入(UserInput)
示例脚本及注释 1 - arguments #!/bin/bash if [ -n "$1" ];then # 验证参数是否传入 echo "The first para ...
- golang 闭包求斐波那契数列
题目是Go指南中的闭包求斐波那契数列 package main import "fmt" // 返回一个"返回int的函数" func fibonacci() ...