数据库建带有主键的表PostgreSQL

数据库的应用: 最近用到的是以前没有接触过的数据库 PostgreSQL 1.创建带有主键的列的表,因为在ssh里主键自动增长 这个数据库和其他的不一样 基础的: 主键自增长: 主键一般是实际意义不大的列,不能把有实际意义的字段作为主键 2.创建表并且表的字段有自增的 create table jzgl( jzid SERIAL primary key, j
阅读本文

数据库并发操作带来的问题以及解决方案

数据库并发操作带来的数据不一致性主要有, 丢失修改,不可重复读(里面包括幻读),读脏数据其中不可重复读有三种情况,后两种称为幻读,幻读和不可重复读的区别是幻读是对数据的删除增添,不可重复读是数据的修改解决办法 封锁锁包括 排它锁(X锁)和共享锁(S锁)封锁带来的问题 :活锁(先来先服务解决),死锁死锁解决方案:预防死锁,定期检测死锁解除死锁预防:1 一次封锁法 ,问题降低并发度
阅读本文

数据库1无法连接问题

经常看到有人在问SQL SERVER 数据库无法连接的问题,通过观察发现,无法连接数据库,出现频率最高的错误是:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)其实
阅读本文

数据库基础学习Day1

数据库的分类:①关系型数据库:也叫SQL,比如:Oracle,MySQL,SQL Server ②非关系型数据库:也叫NoSQL(Not only SQL),比如:redis,mongodb,memcahed。 完整性约束:表内数据的约束(字段和字段之间),表与表之间的约束(外键) 关系型数据库的特点之一:如果表中对应的某个字段没有值(数据),但是系统依然要分配空间,因此关系型数据库比较浪费空间。
阅读本文

数据库(3)---基本操作

** 数据库操作 ** 创建数据库 create database db_name charset=utf8; 删除数据库 drop database db_name; 切换数据库 use db_name; 查看当前数据库 select database(); 表操作 查看当前数据库中的所有表 show tables; 查看创建表的命令 show create table tb_name; 创建
阅读本文

数据库(1)---E-R模型、三范式

数据库简介: 数据库系统解决的问题: 1)持久化存储, 2)优化读写, 3)保证数据的有效性 数据库分类: 1)文档型: sqlite,通过对文件的复制完成数据库的复制 移动性场景 2)服务型: mysql、postgre。c/s模型。 E-R模型 1)entry 表 2)relationship 两个实体之间的关系 一对一、一对多、多对多
阅读本文

JDBC操作数据库之连接数据库

通过JDBC向数据库中添加数据的时候,使用insert语句实现数据的插入,再SQL语句中的参数可以用占位符“?”来替代,然后通过PreparedStatement对象或者Statement对象对其赋值并执行SQL。下面分别对PreparedStatement接口和Statement接口插入数据方法做代码实现:其中PreparedStatementTest类中是用PreparedStatement
阅读本文

数据库设计3范式

为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。                 在实际开发中最为常见的设计范式有三个:1.第一范式(确保每列保持原子性)第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式
阅读本文

数据库书籍推荐

SQL学习指南(第二版)  这本书的后半段对sql的深入理解很有帮助。前半段就不要看了,反正都是些sql语句,这个都不会,基本告别coding了。计算机科学丛书:数据库系统概念(原书第6版)计算机科学从书:数据库系统实现(第2版)  这两本属于数据库入门书籍,通读就好了,前两本就通读一下 不求甚解 有个概念比较好数据库索引设计与优化  MySQL必知必会数据库查询优化器的艺术:原理解析与SQL性能
阅读本文

数据库断开式

//建立与数据库的连接 string strcon = ConfigurationManager.ConnectionStrings[“XU“].ConnectionString; SqlConnection con = new SqlConnection(strcon); // 指定数据集 SqlCom
阅读本文

PHP数据库

PHP数据库   【连接数据库】使用mysql_connect()方法,这个方法里有三个参数 “localhost”代表数据库地址“root”代表数据库里的一个用户“123”代表这个数据库用户的密码    mysql_connect()这个函数有两种情况的返回值,1.当连接成功的时候返回mysql连接标识符2.当连接失败的时候返回false 为了使代码更加严谨,需要判断是否连接上数据库,使用if语
阅读本文

数据库小结

1.SQL语句:结构化查询语言,分为5类DDL 数据定义语言DML 数据操控语言TCL 事务控制语言DQL 数据查询语言DCL 数据控制语言 DDL:数据定义语言(用于建立,修改,删除数据库对象)包括:CREATE:创建表或其他对象结构   ALTER:修改表或其他对象的结构   DROP:删除表或其他对象的结构   TRUNCATE:删除表数据,保留表结构 DML:数据操作语言(用于改变数据表中
阅读本文

数据库基础---三种抽象两种数据独立性

数据抽象 三种抽象 视图抽象: 把现实世界中的信息按照不同用户的观点抽象为多个逻辑数据结构。 每个逻辑数据结构称为一个视图,描述了某些图特定用户所关心的数据。 所有视图的集合形成了数据库的外模式。 概念抽象 把数据库的外模式抽象为数据库的概念模式。 数据库的概念模式综合了外模式中所有视图,反映了所有数据库用户所关心的现实世界的抽象,形成了数据库的整体逻辑结构。 物理抽象 把
阅读本文

数据库的基本操作:索引、视图、导入和导出、备份和恢复

实验环境 Ubuntu Linux 14.04 64位一、索引(1)索引是一种与表有关的结构,作用相当于书的目录,可以根据目录中的页码快速地找到所需的内容。(2)当表中有大量记录时,若要对表进行查询,没有索引的情况是全表搜索:将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录。缺点:消耗大量数据库系统时间,造成大量磁盘I/O操作。 如果表中已建立索引,在索引中找到符合查询条件的索
阅读本文

Oracle数据库权限管理

系统权限    系统权限是指被授权用户是否可以连接到数据库上及在数据库中可以进行哪些系统操作。    系统权限是在数据库中执行某种系统级别的操作,或者针对某一类的对象执行的某种操作的权利。    下面列举4个常见的系统权限:        1) create session:连接到数据库。        2) create table:创建表。        3) create view:创建视图
阅读本文

MYSQL数据库建表注意事项

1.库名、表名、字段名必须使用小写字母,“_”分割。原因:MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:  1、数据库名与表名是严格区分大小写的;  2、表的别名是严格区分大小写的;  3、列名与列的别名在所有的情况下均是忽略大小写的;  4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。  所以在不同操作系统中为了能使程序和数据库都能正常运行,最
阅读本文

Java项目专栏之数据库建表

Java项目专栏之数据库建表数据库建表前期准备1. 安装mysql:数据库语言,语法和sql server差不太多,如果习惯于sql server可以不用mysql。 2. 安装navicat:可视化数据库工具,简化你的建表操作。正式建表1. 数据库的配置我就不一一讲解了,直接开始建表吧,建表先建主外键约束少或者没有的表。 2. 创建数据库,命名为:shop_manage_system.这里要注意
阅读本文

数据库面试系列之二:视图

视图的定义:视图是一个或者多个基本表(或者视图)导出的表。视图是一张虚表,视图的数据并不实际存储视图的优点:1.视图可以简化用户的操作2.视图可以让用户从多个角度来看待同一数据3.视图提供一定的数据逻辑独立性4.视图提供了一定的安全性什么样的场景适合建立视图?比如一张表里面存放了员工ID,部门名称,月薪想要获取某个部门所有用户的年薪可以建立一个存储年薪的视图:
阅读本文

数据库面试系列之一:内连接和外连接

内连接是返回关系表中既满足查询条件又满足连接条件的元组外连接是返回关系表中满足查询条件的但不一定满足连接条件的元组外连接分为:左外连接,右外连接,全外连接左外连接是返回左表中满足查询条件但不一定满足连接条件的元组右外连接是返回右表中满足查询条件但不一定满足连接条件的元组全外连接是返回左表中满足查询条件和右边中满足查询条件的元组 下面是两个基本表:s表和sc表       内连接返回的结果如下:
阅读本文