数据库对象

C#数据库部分复习

若如初见. 提交于 2019-12-02 23:00:22
1、概述 ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库; 第二,建立SqlCommand对象,负责SQL语句的执行和存储过程的调用; 第三,对SQL或存储过程执行后返回的“结果”进行操作。 对返回“结果”的操作可以分为两类: 一是用SqlDataReader直接一行一行的读取数据集; 二是DataSet联合SqlDataAdapter来操作数据库。 两者比较: SqlDataReader时刻与远程数据库服务器保持连接,将远程的数据通过“流”的形式单向传输给客户端,它是“只读”的。由于是直接访问数据库,所以效率较高,但使用起来不方便。 DataSet一次性从数据源获取数据到本地,并在本地建立一个微型数据库(包含表、行、列、规则、表之间的关系等),期间可以断开与服务器的连接,使用SqlDataAdapter对象操作“本地微型数据库”,结束后通过SqlDataAdapter一次性更新到远程数据库服务器。这种方式使用起来更方,便简单。但性能较第一种稍微差一点。(在一般的情况下两者的性能可以忽略不计。) 一张十分出名的ADO.NET结构图: 2、连接字符串的写法 string connectString = "Data Source=.;Initial Catalog=Student;Integrated

ORM:对象关系映射

匿名 (未验证) 提交于 2019-12-02 22:51:30
定义:面向对象和关系型数据库的一种映射,通过操作对象的方式操作数据 对应关系: 类对应数据表 对象对应数据行(记录) 属性对应字段 导入:from app01 import models 查: models.Publisher.objects.all() 查询所有的数据,queryset:对象列表 models.Publisher.objects.get(name='xxxx') 对象,获取一个对象(有且唯一),获取不到或者获取到多个对象会报错 models.Publisher.objects.filter(name='xxxx') 获取满足条件的所有的对象,queryset:对象列表 增: models.Publisher.objects.create(name='xxx') 新插入数据库的对象 obj = models.Publisher(name='xxx') 存在在内存中的对象 obj.save() 提交到数据库中,新增 删: obj = models.Publisher.objects.get(pk=1) obj.delete() obj_list = models.Publisher.objects.filter(pk=1) obj_list.delete() 改: obj = models.Publisher.objects.get(pk=1) obj.name =

2019年6月14日 Web框架之Django_07 进阶操作(MTV与MVC、多对多表三种创建方式、前后端传输数据编码格式contentType、ajax、自定义分页器)

匿名 (未验证) 提交于 2019-12-02 22:51:30
ժҪ MTV与MVC 多对多表三种创建方式 ajax ,前后端传输数据编码格式contentType 批量插入数据和自定义分页器 MVC(Model View Controller 模型-视图-控制器) 是一种Web架构的模式,所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层;他们之间以一种插件似的,松耦合的方式连接在一起。 模型负责业务对象与数据库的对象(ORM),视图负责与用户的交互(页面),控制器(C)接受用户的输入调用模型和视图完成用户的请求。 Model : 代表数据存取层, View 代表的是系统中选择显示什么和怎么显示的部分, Controller 指的是系统中根据用户输入并视需要访问模型,以决定使用哪个视图的那部分。 MTV(Model Templates View 模型-模板-视图) Django框架就是MTV模型 : Models:数据存取层 。 该层处理与数据相关的所有事务: 如何存取、如何验证有效,是一个抽象层,用来构建和操作你的web应用中的数据,模型是你的数据的唯一的、权威的信息源。它包含你所储存数据的必要字段和行为。通常,每个模型对应数据库中唯一的一张表。 模板(templates):即表现层 。 该层处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。模板层提供了设计友好的语法来展示信息给用户

C#工具类MySqlHelper,基于MySql.Data.MySqlClient封装

匿名 (未验证) 提交于 2019-12-02 22:09:29
源码: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using System.Data; 7 using MySql.Data.MySqlClient; 8 9 10 namespace Fly.Util.DataBase 11 { 12 /// <summary> 13 /// MySql数据库操作类 14 /// </summary> 15 public static class MySqlHelper 16 { 17 /// <summary> 18 /// 执行数据库非查询操作,返回受影响的行数 19 /// </summary> 20 /// <param name="connectionString">数据库连接字符串</param> 21 /// <param name="cmdType">命令的类型</param> 22 /// <param name="cmdText">MySql存储过程名称或PL/SQL命令</param> 23 /// <param name="cmdParms">命令参数集合</param> 24 /// <returns

C#学习之旅---C#操作SQL数据库

匿名 (未验证) 提交于 2019-12-02 22:06:11
C#操作SQL数据库 Connection(连接)对象 连接字符串: 形式1.”server=;uid=;pwd=;database=”          形式2.”server=;Intergrated Security=true/SSPI” 创建连接对象: SqlConnection con=new SqlConnection(连接字符串) 打开数据库连接:con.Open() 关闭数据库连接:con.Close() 查看连接状态:con.state =ConnectionState.Open/Closed Command(命令)对象 创建命令对象:形式1. SqlCommand cmd=new SqlCommand()           形式2.new SqlCommand(Sql语句, 连接对象)//省略2,5 指定连接对象:cmd.Connection=连接对象 设置命令类型:cmd.CommandType=CommandType.Text/ StoredProcedure 连接数据库: cmd.Connection.Open() 设置Sql语句:cmd.CommandText=”select语句”/”非select语句”/”存储过程名” 执行sql语句:形式1.执行非select语句,返回受影响的行数:cmd.ExecuteNonQuery() 形式2

MySQL中间件性能测试 I

匿名 (未验证) 提交于 2019-12-02 22:06:11
本文根据黄炎在2018年7月7日【MySQL技术沙龙 ・ 成都站】现场演讲内容整理而成。 黄炎 爱可生研发总监,深入钻研分布式数据库相关技术,擅长业界相关MySQL中间件产品和开发,以及分布式中间件在企业内部的应用实践。 MySQL中间件性能测试 I 摘要: 我今天代表我的团队向大家来介绍一下MySQL中间件性能的测试,为大家带来一些不太一样的故事,包括我们在做性能测试的时候一些不太一样的视角。 分享大纲: 1.性能测试的常见的(错误)方法 * 3 2.性能测试的一些(我们用的)方法 * 2 3.分布式事务相关 * 1 我今天代表我的团队向大家来介绍一下MySQL中间件性能的测试,之所以讲选这个主题是因为我注意到大家都是高级的DBA,我们也有很多的高级的DBA,跟大家聊天的时候都会注意到,大家对于性能测试的第一印象: 性能 = sysbench 测试 = run 结果 = tps 数值要高大上 性能就是sysbench,然后测试就是跑一下,这就叫性能测试了,结果就是要TPS或者QPS,数值一定要高大上,这是大家对性能测试测试的第一印象也可能是唯一的印象。我们公司是属于乙方的技术服务提供商,我们对业界的很多产品进行过性能测试,所以今天想为大家带来一些不太一样的故事,以及我们在做性能测试的时候一些视角。 我今天大概会向大家介绍三件事情: 第一件事情 是我们观察到,大家在做性能测试的时候

使用JAVA语言操作Hbase

匿名 (未验证) 提交于 2019-12-02 21:53:52
下面我自定义了一个工具类HBaseUtil,通过该类可以方便的对hbase数据库进行增删改查。 package com.demo; import java.util.ArrayList; import java.util.List; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.hbase.TableName; import org.apache.hadoop.hbase.client.Admin; import org.apache.hadoop.hbase.client.Connection; import org.apache.hadoop.hbase.client.ConnectionFactory; import org.apache.hadoop.hbase.client.Delete; import org

mybatis入门使用

对着背影说爱祢 提交于 2019-12-02 21:30:00
1.编写mybatis.xml文件 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 配置 mybatis 的环境 --><environments default="mysql"><!-- 配置 mysql 的环境 --><environment id="mysql"><!-- 配置事务的类型 --><transactionManager type="JDBC"></transactionManager><!-- 配置连接数据库的信息:用的是数据源(连接池) --><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/ee50"/><property name="username" value="root"/><property name="password" value="1234"/></dataSource></environment><

jdbc就是这么简单

匿名 (未验证) 提交于 2019-12-02 20:37:20
一、JDBC JAVA Database Connectivity java 数据库连接. JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。 SUN公司提供的一种数据库访问规则、规范, 由于数据库种类较多,并且java语言使用比较广泛,sun公司就提供了一种规范,让其他的数据库提供商去实现底层的访问规则。 我们的java程序只要使用sun公司提供的jdbc驱动即可。 我们安装好数据库之后,我们的应用程序也是不能直接使用数据库的,必须要通过相应的数据库驱动程序,通过驱动程序去和数据库打交道。其实也就是数据库厂商的JDBC接口实现,即对Connection等接口的实现类的jar文件。 1.Driver接口 Driver接口由数据库厂家提供,作为java开发人员,只需要使用Driver接口就可以了。在编程中要连接数据库,必须先装载特定厂商的数据库驱动程序,不同的数据库有不同的装载方法。如: 装载MySql驱动:Class.forName("com.mysql.jdbc.Driver"); 装载Oracle驱动

DataReader和DataAdapter的区别

旧城冷巷雨未停 提交于 2019-12-02 19:08:33
SqlDataReader是一个向前的指针,本身并不包含数据,调用一次Read()方法它就向前到下一条记录,一个SqlDataReader必须单独占用一个打开的 数据库 连接。 在使用 SqlDataReader时,关联的 SqlConnection 正忙于为 SqlDataReader 服务,对 SqlConnection 无法执行任何其他操作。除非调用 SqlDataReader 的 Close 方法,否则会一直处于此状态。 SqlDataAdapter象一座桥梁,一头连起数据库表,一头连起一个 DataSet 或者 DataTable ,在把数据库中的数据填充到 DataSet 或 DataTable 后就可以“过河拆桥”,不用再连接到数据库,而可以直接从 DataSet 或 DataTable 中获取数据。 SqlDataAdapter提供了许多的方法,来方便我们对一些特定的数据集合进行操作比如,填充一个查询结果到 DataTable ,或 DataSet 中其实就是类似于:创建一个 SqlCommand 然后执行 "Select * from [Table]" 然后执行 ExcuteReader()方法 得到一个IDataReader对象然后逐行读取数据并存放到一个集合对象中(如DataTable)经过测试,如果有大量的数据操作最好是自己写 SqlCommand