安装

github hisql 最新源码下载

也可以通过nuget安装

注意:HiSql仅支持.net5或以上环境

  1. 选择您需要支持的数据库对应的支持包进行安装 本例使用sqlserver进行演示,请安装1.0.1.3以上版本

  2. 连接数据库

  HiSqlClient sqlclient = new HiSqlClient(
new ConnectionConfig()
{
DbType = DBType.SqlServer,
DbServer = "local-HoneBI",
//ConnectionString = "server=192.168.1.90,8433;uid=sa;pwd=Hone@123;database=HoneBI",
ConnectionString = "server=(local);uid=sa;pwd=Hone@123;database=HiSql;",//; MultipleActiveResultSets = true;
Schema = "dbo",
IsEncrypt = true,
IsAutoClose = false,
SqlExecTimeOut = 60000, AppEvents = new AopEvent()
{
OnDbDecryptEvent = (connstr) =>
{
//解密连接字段
//Console.WriteLine($"数据库连接:{connstr}"); return connstr;
},
OnLogSqlExecuting = (sql, param) =>
{
//sql执行前 日志记录 (异步) //Console.WriteLine($"sql执行前记录{sql} time:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff")}");
},
OnLogSqlExecuted = (sql, param) =>
{
//sql执行后 日志记录 (异步)
//Console.WriteLine($"sql执行后记录{sql} time:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff")}");
},
OnSqlError = (sqlEx) =>
{
//sql执行错误后 日志记录 (异步)
Console.WriteLine(sqlEx.Message.ToString());
},
OnTimeOut = (int timer) =>
{
//Console.WriteLine($"执行SQL语句超过[{timer.ToString()}]毫秒...");
}
}
}
);
  1. 第一次使用时需要执行以下方法进行HiSql安装(只需要执行一次)
sqlclient.CodeFirst.InstallHisql();

4 .检查是否安装成功

数据库中出现以下四张表则安装成功

下面就可以进行表操作了

建一张测试表【H_Test】 测试一下 sql代码如下

USE [HiSql]
GO /****** Object: Table [dbo].[H_Test] Script Date: 2021/10/26 9:37:42 ******/
SET ANSI_NULLS ON
GO SET QUOTED_IDENTIFIER ON
GO CREATE TABLE [dbo].[H_Test](
[Hid] [int] NOT NULL,
[UserName] [nchar](50) NULL,
[UserAge] [int] NULL,
[ReName] [nvarchar](50) NULL,
CONSTRAINT [PK_H_Test] PRIMARY KEY CLUSTERED
(
[Hid] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO ALTER TABLE [dbo].[H_Test] ADD CONSTRAINT [DF_H_Test_UserAge] DEFAULT ((0)) FOR [UserAge]
GO

或可以通过实体类来创建表 ,如下实体

[HiTable(IsEdit = true, TabName = "H_Test", TabDescript = "测试表")]
public class H_Test: StandField
{
[HiColumn(FieldDesc = "编号", IsPrimary = true, IsBllKey = true, DBDefault = HiTypeDBDefault.EMPTY, SortNum = 1)]
public int Hid { get; set; } [HiColumn(FieldDesc = "用户名", FieldLen = 50, DBDefault = HiTypeDBDefault.EMPTY, SortNum = 2 )]
public string UserName { get; set; } [HiColumn(FieldDesc = "年龄", DBDefault = HiTypeDBDefault.EMPTY, SortNum = 3)]
public int UserAge { get; set; } [HiColumn(FieldDesc = "真实姓名", FieldLen = 50, DBDefault = HiTypeDBDefault.EMPTY, SortNum = 4)]
public string ReName { get; set; }
}

再执行以下代码

Tuple<HiTable, List<HiColumn>> tabomdel = sqlclient.Context.DMInitalize.BuildTabStru(typeof(DemoTable.H_Test));
int v=(int)sqlclient.Context.DBO.ExecCommand(sqlclient.Context.DMTab.BuildTabCreateSql(tabomdel.Item1, tabomdel.Item2, true));
  1. 通过HiSql ORM SDK 向表[H_Test] 插入数据
sqlclient .Insert("H_Test", new{Hid = 1, UserName = "tansar",UserAge = 100, ReName = "Tom"}).ExecCommand();
  1. 查询刚刚插入的数据
DataTable dt_result = sqlclient.Query("H_Test").Field("*").ToTable();

hisql 新一代无实体ORM使用第一步 hisql安装使用的更多相关文章

  1. HiSql 实现case语法操作 新一代无实体ORM框架

    HiSql 实现case语法操作 在SqlServer,Oralce,Hana,PostGreSql,MySql 这些数据都支持SQL case语法,平常在实现业务开发中也会常用到,那么HiSql对于 ...

  2. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  3. mac下zephir第一步,安装+hello zephir!

    第一步 安装autoconf re2c automake libtool等依赖,如果没有安装git的记得先安装git brew install autoconf brew install automa ...

  4. ios开发第一步--虚拟机安装MAC OS X

    暂时还没买Macbook,先用虚拟机练练手. 先说说准备工作,我是在win8下安装的,这个不是关键的,只要Vmware版本和MAC OS X版本确定就行了,win7下同样可以. 1.虚拟机Vmware ...

  5. Vue踩坑第一步,安装Vue最新版本

    学习vue第一步肯定是安装vue-cli,那么肯定想去搜下如何安装vue-cli呢? 网上搜到的结果大都是: npm i vue-cli -g 输入vue -V发现: 输入node -v发现: 自己明 ...

  6. JAVA开发第一步 - JDK安装与配置

    JDK的安装与环境变量配置是JAVA开发之路的第一步,很多新人在这一步上就卡了很久,浪费了很多时间,甚至有些人就轻易地“从入门到放弃”了.今天我们就来一步步教你如何打倒这第一只拦路虎. 1.JDK下载 ...

  7. 学习Java第一步:安装Intellij IDEA和JDK

    注:其实真正学习一门新语言的第一步并不是安装开发工具,我是C#转JAVA,有一点编程经验了,所以可以直接跳过前面几步,直接上IDE. 1.下载IntelliJ IDEA [官网] http://www ...

  8. 【手撸一个ORM】第一步、实体约定和描述

    一.约定 数据实体必须实现 IEntity 接口,该接口定义了一个int类型的Id属性,既每个实体必须有一个名称为Id的自增主键. 若数据表的主键列名称不是Id,可以通过 [MyKey("主 ...

  9. Altera SoC与Matlab的联合---第一步 软件安装与硬件测试

    参考设计:http://cn.mathworks.com/help/hdlcoder/examples/getting-started-with-hardware-software-codesign- ...

随机推荐

  1. 理解JMX之介绍和简单使用

    JMX最常见的场景是监控Java程序的基本信息和运行情况,任何Java程序都可以开启JMX,然后使用JConsole或Visual VM进行预览.下图是使用Jconsle通过JMX查看Java程序的运 ...

  2. hash 模式与 history 模式小记

    hash 模式 这里的 hash 就是指 url 后的 # 号以及后面的字符.比如说 "www.baidu.com/#hashhash" ,其中 "#hashhash&q ...

  3. Linkerd Service Mesh 授权策略(Server & ServerAuthorization)

    简介 Server 和 ServerAuthorization 是 Linkerd 中的两种策略资源, 用于控制对 mesh 应用程序的入站访问. 在 linkerd 安装期间,policyContr ...

  4. .NET Core工程应用系列(1) 定制化Audit.NET实现自定义AuditTarget

    需求背景 最近在项目上需要增加对用户操作进行审计日志记录的功能,调研了一圈,在.net core生态里,用的最多的是Audit.NET.浏览完这个库的文档后,觉得大致能满足我们的诉求,于是建立一个控制 ...

  5. LuoguP6904 [ICPC2015 WF]Amalgamated Artichokes 题解

    Content 已知常数 \(p,a,b,c,d\),我们知道,第 \(k\) 天的股价公式为 \(price_k=p\times(\sin(a\times k+b)+\cos(c\times k+d ...

  6. libevent源码学习(13):事件主循环event_base_loop

    目录开启事件主循环执行事件主循环校对时间 阻塞/非阻塞处理激活队列中的event事件主循环的退出event_base_loopexitevent_base_loopbreak开启事件主循环       ...

  7. Spring学习(三)几种集合属性的注入方式

    1.前言 众所周知.java中不只有八大简单类型.还有一些集合类型.本文围绕集合类型的注入做一个总结. 2.项目骨架 3.过程 1.创建实体类AllCollectionType package com ...

  8. JAVA地址通过百度地图API转化为经纬度

    public static Map getLngAndLat(String address) { Map map = new HashMap(); String url = "http:// ...

  9. JAVA字符串拼接操作规则说明

    1.常量与常量的拼接结果在常量池,原理是编译期优化 public void test1() { String s1 = "a" + "b" + "c& ...

  10. Windows串口之解决包含setupapi.h还提示找不到符号报错

    关于 本文演示环境: win10 1909 + VS2017 1. 错误信息 明明已经添加了头文件setupapi.h 和 库 setupapi.lib, 却还是提示报错,报错信息: 1>C:\ ...