当前位置: 首页 > news >正文

2-Visual Studio 2022 NET开发Windows桌面软件并连接SQL Server数据库

引言

        今天尝试Visual Studio 2022 NET开发一个NET桌面软件,并尝试连接SQL Server的数据库,此文章为开发笔记。

---------------------------------------------------------------------------------------------------------------------------------

一,创建项目

1,VS配置项目基础环境

创建新项目

2,创建Git仓库

访问>>>>Gitee<<<<

创建仓库(建议创建开源仓库,以供大家学习参考)

复制这个链接

回到VS2022,点击Git更改,创建Git仓库

点保存

配置完成。

返回仓库:查看已经更新。

添加开源许可证为Apache2.0

提交即可:

完成

---------------------------------------------------------------------------------------------------------------------------------

二,设计窗体与数据源绑定

使用的组件有:Label,DataGridView

先添加Label文字组件,然后添加DataGridView数据组件

1,绑定数据源

选择添加数据源:

选择添加数据库:

        此处选择已经安装好的SQL Server 数据库,添加好数据,添加教程,并勾选显示将保存在应用程序中的连接字符串选项

Data Source=UNIX-OS;Initial Catalog=bigdata;Integrated Security=True;Encrypt=True;Trust Server Certificate=True

选择数据源

选择需要显示的表和字段

点完成

调整窗体设计:

选择启动,即可显示:

数据链接完成。

3,分割项目代码版本

ctrl+s保存当前工程,选择git更改

消息内容:绑定数据源

点击更改数右边的+号,全部添加,如有未保存的点击保存即可。

点击提交临时数据

点此上传图标

推送完成

---------------------------------------------------------------------------------------------------------------------------------

三,添加公共控件

此阶段将添加公共控件用于支持对数据表进行查询,删除,插入操作

 1,控件选择

Button单击它时引发事件  
TextBox输入文本

在视图的工具箱里选择Button和TextBox

选择Button控件,在它的属性里修改其显示文本Text修改为:查询

适当调节显示的字体属性Font参数

查看:

TextBox控件也可以通过修改字体大小调整整体的大小

2,控件功能设置

(1),查询按钮

双击进入Button查询控件,调整点击后引发的事件,编写对Button引发事件的代码

示例代码:

private void button1_Click(object sender, EventArgs e)
{// 检查输入有效性if (this.textBox1.Text == ""){// 弹出空输入提示MessageBox.Show("请输入查询内容!");}else{// 构建动态SQL查询语句(注意:存在SQL注入风险,建议使用参数化查询)// 使用LIKE进行模糊查询,%表示任意字符匹配string strsql = " SELECT * FROM table_name WHERE field_name LIKE '%" + textBox1.Text + "%' ";/* 创建数据库连接对象* 参数说明:* Data Source - 数据库服务器地址/实例名* Initial Catalog - 数据库名称* Integrated Security - 使用Windows身份验证* Encrypt - 启用加密连接* TrustServerCertificate - 信任服务器证书(开发环境常用) */SqlConnection conn = new SqlConnection("Data Source=UNIX-OS;Initial Catalog=bigdata;" + "Integrated Security=True;Encrypt=True;TrustServerCertificate=True");// 创建命令对象(关联SQL语句和数据库连接)SqlCommand cmd = new SqlCommand(strsql, conn);// 创建数据适配器(作为数据库与DataSet之间的桥梁)SqlDataAdapter da = new SqlDataAdapter(cmd);// 实例化DataSet(内存中的关系型数据容器)DataSet ds = new DataSet();try {// 打开数据库连接conn.Open();// 使用数据适配器填充DataSet// Fill方法会自动处理连接状态,如果连接未打开会自动打开da.Fill(ds);// 绑定数据到DataGridView// Tables[0] 表示DataSet中的第一个数据表dataGridView1.DataSource = ds.Tables[0];}catch (Exception ex){// 异常处理(建议记录日志或显示错误信息)MessageBox.Show("数据库操作失败: " + ex.Message);}finally{// 确保连接关闭(释放资源)if (conn.State != ConnectionState.Closed){conn.Close();}}}
}

需要修改的变量:3个

table_name表名
field_name查询字段
SqlConnection conn = new SqlConnection();SQL Server服务器连接信息,就是创建数据源时需要复制的连接字段

调整后:

代码建议:此示例代码可能有SQL注入的漏洞,仅用于开发环境使用,下提供修复后的完整代码:

private async void button1_Click(object sender, EventArgs e)
{// 输入验证if (string.IsNullOrWhiteSpace(textBox1.Text)){MessageBox.Show("请输入有效的会员卡号查询内容!", "输入提示", MessageBoxButtons.OK, MessageBoxIcon.Information);return;}try{// 使用参数化查询防止SQL注入const string query = @"SELECT * FROM huiyuan WHERE 会员卡号 LIKE @SearchTermORDER BY 会员卡号";// 使用配置文件中的连接字符串(推荐)var connectionString = "Data Source=UNIX-OS;Initial Catalog=bigdata;" +"Integrated Security=True;Encrypt=True;" +"TrustServerCertificate=True";// 使用using自动释放资源using (var conn = new SqlConnection(connectionString))using (var cmd = new SqlCommand(query, conn)){// 添加参数化查询cmd.Parameters.Add("@SearchTerm", SqlDbType.NVarChar, 50).Value = $"%{textBox1.Text.Trim()}%";// 异步操作防止界面冻结await conn.OpenAsync();var dataTable = new DataTable("Members");// 使用SqlDataReader提升性能using (var reader = await cmd.ExecuteReaderAsync()){dataTable.Load(reader);}// 显示结果if (dataTable.Rows.Count > 0){dataGridView1.DataSource = dataTable;dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells);}else{dataGridView1.DataSource = null;MessageBox.Show("未找到匹配的会员记录", "查询结果", MessageBoxButtons.OK, MessageBoxIcon.Warning);}}}catch (SqlException ex){MessageBox.Show($"数据库错误:{ex.Message}\n错误代码:{ex.Number}", "数据库异常", MessageBoxButtons.OK, MessageBoxIcon.Error);}catch (Exception ex){MessageBox.Show($"操作失败:{ex.Message}", "系统异常", MessageBoxButtons.OK, MessageBoxIcon.Error);}
}

尝试启动操作查询:

成功。开始进一步开发功能:

添加删除、插入、恢复显示的Button,只需要改一下代码的SQL语句即可。

(2),删除按钮

private async void button2_Click(object sender, EventArgs e)
{// 输入验证(删除操作需要更严格的验证)if (string.IsNullOrWhiteSpace(textBox1.Text)){MessageBox.Show("请输入有效的会员卡号!","输入提示",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}try{// 修改后的删除SQL语句(使用精确匹配)const string deleteQuery = @"DELETE FROM huiyuan WHERE 会员卡号 = @CardNo";  // 移除了ORDER BY和模糊查询var connectionString = "Data Source=UNIX-OS;Initial Catalog=bigdata;" +"Integrated Security=True;Encrypt=True;" +"TrustServerCertificate=True";using (var conn = new SqlConnection(connectionString))using (var cmd = new SqlCommand(deleteQuery, conn)){// 修改参数名称和类型(根据实际字段类型调整)cmd.Parameters.Add("@CardNo", SqlDbType.NVarChar, 100).Value = textBox1.Text.Trim();await conn.OpenAsync();// 执行删除操作(返回受影响行数)int rowsAffected = await cmd.ExecuteNonQueryAsync();// 显示操作结果if (rowsAffected > 0){MessageBox.Show($"成功删除 {rowsAffected} 条会员记录","操作成功",MessageBoxButtons.OK,MessageBoxIcon.Information);// 可选:刷新数据视图// RefreshDataGridView(); }else{MessageBox.Show("未找到匹配的会员记录","删除结果",MessageBoxButtons.OK,MessageBoxIcon.Warning);}}}catch (SqlException ex){// 特别处理外键约束等错误string errorMsg = ex.Number == 547 ? "存在关联数据,无法直接删除!" : ex.Message;MessageBox.Show($"删除失败:{errorMsg}","数据库异常",MessageBoxButtons.OK,MessageBoxIcon.Error);}catch (Exception ex){MessageBox.Show($"操作失败:{ex.Message}","系统异常",MessageBoxButtons.OK,MessageBoxIcon.Error);}
}

测试:

删除成功!

(3),添加恢复显示/重置按钮

private async void button3_Click(object sender, EventArgs e)
{try{// 修改后的查询SQL语句const string query = @"SELECT * FROM huiyuan";  // 移除了WHERE条件和参数var connectionString = "Data Source=UNIX-OS;Initial Catalog=bigdata;" +"Integrated Security=True;Encrypt=True;" +"TrustServerCertificate=True";using (var conn = new SqlConnection(connectionString))using (var cmd = new SqlCommand(query, conn)){// 移除了参数添加代码(因为不需要查询条件)await conn.OpenAsync();var dataTable = new DataTable("Clients");// 恢复使用DataReader读取数据using (var reader = await cmd.ExecuteReaderAsync()){dataTable.Load(reader);}// 显示结果if (dataTable.Rows.Count > 0){dataGridView1.DataSource = dataTable;dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells);}else{dataGridView1.DataSource = null;MessageBox.Show("客户端表无数据","查询结果",MessageBoxButtons.OK,MessageBoxIcon.Warning);}}}catch (SqlException ex){MessageBox.Show($"数据库错误:{ex.Message}","数据库异常",MessageBoxButtons.OK,MessageBoxIcon.Error);}catch (Exception ex){MessageBox.Show($"操作失败:{ex.Message}","系统异常",MessageBoxButtons.OK,MessageBoxIcon.Error);}
}

测试:

先查询后再恢复:

成功!

---------------------------------------------------------------------------------------------------------------------------------

四,配置系统主界面

1,新建Windows窗体

选择项目,右键添加,Windows窗体

在视图里的工具箱里找到MenuStrip建立菜单栏

按需输入模块

我这里直接选则buttion控件操作。

完成。

相关文章:

2-Visual Studio 2022 NET开发Windows桌面软件并连接SQL Server数据库

引言 今天尝试Visual Studio 2022 NET开发一个NET桌面软件&#xff0c;并尝试连接SQL Server的数据库&#xff0c;此文章为开发笔记。 --------------------------------------------------------------------------------------------------------------------------------- …...

OpenGL学习笔记(简介、三角形、着色器、纹理、坐标系统、摄像机)

目录 简介核心模式与立即渲染模式状态机对象GLFW和GLAD Hello OpenGLTriangle 三角形顶点缓冲对象 VBO顶点数组对象 VAO元素缓冲对象 EBO/ 索引缓冲对象 IEO 着色器GLSL数据类型输入输出Uniform 纹理纹理过滤Mipmap 多级渐远纹理实际使用方式纹理单元 坐标系统裁剪空间 摄像机自…...

第二十九章:Python-mahotas库:图像处理的高效工具

一、mahotas库简介 mahotas是一个功能强大的Python图像处理库&#xff0c;提供了丰富的图像处理算法和工具&#xff0c;包括图像分割、特征提取、滤波、形态学操作等。它以简洁的API和高效的性能著称&#xff0c;特别适合处理大型图像。资源绑定附上完整资料供读者参考学习&…...

【网络安全】 防火墙技术

防火墙是网络安全防御的重要组成部分&#xff0c;它的主要任务是阻止或限制不安全的网络通信。在这篇文章中&#xff0c;我们将详细介绍防火墙的工作原理&#xff0c;类型以及如何配置和使用防火墙。我们将尽可能使用简单的语言和实例&#xff0c;以便于初学者理解。 一、什么…...

关于Linux系统安装和优化的教程

书籍教程 《Linux 就该这么学》&#xff1a;涵盖多种 Linux 发行版的安装知识&#xff0c;从安装前硬件检测&#xff08;如硬盘容量需至少 10GB、内存至少 2GB &#xff09;、软件源选择&#xff0c;到安装步骤&#xff08;如镜像烧录、启动设置、分区操作 &#xff09;都有详…...

还是主题混合程序设计

以下是针对您现有代码的完整主题化改造方案&#xff0c;实现跨QML/Qt Widgets的阴影主题系统&#xff1a; 一、主题管理系统核心 // thememanager.h #pragma once #include <QObject> #include <QColor> #include <QMap> #include <QQmlEngine>class…...

【FPGA开发】利用状态机思想点亮流水灯/初学hdlbitsFPGA教程网站

一、状态机思想介绍 状态机是一种用于描述系统行为的形式化模型&#xff0c;它将系统抽象为有限的状态&#xff0c;并通过状态转移来响应外部输入或事件。其核心思想是&#xff1a;系统在任何时刻只处于一个确定的状态&#xff0c;且在不同状态之间按规则切换。状态机是处理明…...

洛谷 P3214 [HNOI2011] 卡农

题目传送门 前言 再次败在 d p dp dp 手下&#xff0c;但是数据范围这么小应该是可以看出是 d p dp dp 的&#xff08;毕竟对于其他组合数的问题数据范围都是 1 0 9 10^9 109 起步&#xff09;。 思路 题意简化 现有 1 , 2 , 3 , . . . , n − 1 , n 1, 2, 3, ... , n -…...

智能体和RPA都需要程序思维,如何使用影刀的变量?

欢迎来到涛涛聊AI&#xff0c; 不管AI还是RPA&#xff0c;都需要用到编程思想才能完成批量工作。今天研究了下影刀的变量。 变量类型 根据变量值选择相应的类型&#xff0c;可选择任意一种影刀所支持的数据类型 变量值 指定变量中保存的值&#xff0c;会根据不同的类型设置…...

使用OpenFeign实现服务远程调用

在微服务架构中&#xff0c;由于业务功能的分工不同&#xff0c;我们把项目拆分为多个独立的服务&#xff0c;并常常将其部署在不同的服务器上&#xff0c;这个时候如果服务A的某个功能需要借助服务B来实现&#xff0c;那么这个时候如何去调用就成了问题&#xff0c;目前有一种…...

【移动计算】:AndroidStudio安装和项目搭建【2019:版本3.5.2】

文章目录 1. 下载安装包2. 安装包安装2.1 运行完exe进行安装选择Cancel&#xff1a; Unable SdkInstall Type选择Custom可以选择更新最新版本&#xff1a;这里不选择点击Next勾选 Android Sdk Platform API 虚拟设备选项显示已安装否则也需要勾选设置自定义安装地址&#xff1a…...

泡棉压缩对显示模组漏光的定位分析及论述

■背景 液晶LCD受到外力或者挤压后&#xff0c;比较容易出现漏光现象即显示mura。一般从结构设计的角度会做如下措施进行整改 1>控制背光和上铁框平整度 ; 2>合理设计液晶模组的厚度和边框大小 ; 3>承载液晶面板的泡棉选取 ; 4>FPC单双层区的设计 ; 5>合理…...

当AI助理接管云计算-走向智能运维的新时代

目录 时代背景 AI在云计算运维上的帮助 新时代产物&#xff1a;WatchAlert 新时代思考 时代背景 代理人工智能&#xff1a;自主决策的未来--Gartner2025十大顶级科技预测第一名 Gartner将代理人工智能列为2025年的顶级技术趋势。该技术通过快速分析用于药物发现的海量数据…...

Day2:前端项目uniapp壁纸实战

先来做一个轮番图。 效果如下&#xff1a; common-style.css view,swiper,swiper-item{box-sizing: border-box; } index.vue <template><view class"homeLayout"><view class"banner"><swiper circular indicator-dots autoplay…...

使用人工智能大模型DeepSeek,如何进行论文润色和去重?

今天我们学习人工智能&#xff0c;如何协助我们进行论文润色和去重。手把手的学习视频地址请访问https://edu.csdn.net/learn/40402/666422 第一步在腾讯元宝对话框中输入如何协助老师做论文润色&#xff0c;通过提问&#xff0c;我们了解了老师写论文润色的步骤和建议。润色的…...

为招聘推荐系统进行相应修改的 Python 实现方案(含协同过滤推荐算法)

下面是为招聘推荐系统进行相应修改的 Python 实现方案。首先是创建数据分析看板&#xff0c;这里借助 Streamlit 库来实现可视化&#xff1b;其次是将协同过滤推荐算法和其他算法&#xff08;这里采用基于内容的推荐算法&#xff09;结合&#xff0c;以此提升推荐效果。 impor…...

Spring Boot中自定义注解的创建与使用

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…...

算法思想之双指针(二)

欢迎拜访&#xff1a;雾里看山-CSDN博客 本篇主题&#xff1a;算法思想之双指针二) 发布时间&#xff1a;2025.4.5 隶属专栏&#xff1a;算法 目录 双指针算法介绍对撞指针&#xff1a;快慢指针&#xff1a; 例题有效三角形的个数题目链接题目描述算法思路代码实现 查找总价格为…...

MySQL基础 [一] - 数据库基础

目录 什么是数据库 站在服务器角度理解 站在用户角度理解 为什么不直接使用文件存储呢&#xff1f; 主流数据库 MySQL的基本使用 数据库的使用样例 服务器管理 服务器数据库表之间的关系 MySQL的架构 MySQL语句分类 存储引擎 查看存储引擎 存储引擎对比 什么…...

智能合约的法律挑战与解决之道:技术与法律的交融

智能合约的法律挑战与解决之道&#xff1a;技术与法律的交融 智能合约的诞生&#xff0c;为区块链技术的应用打开了新的大门。从简单的自动化交易到复杂的去中心化自治组织&#xff08;DAO&#xff09;&#xff0c;智能合约正在推动全球经济迈向去信任化的新时代。然而&#x…...

MySQL基础 [一] - Ubuntu版本安装

目录 预安装 先查看自己操作系统的版本 添加MySQL APT下载源 下载 安装 正式安装 查看MySQL状态 打开MySQL 预安装 先查看自己操作系统的版本 lsb_release -a 添加MySQL APT下载源 下载 下载发布包 下载地址 : https://dev.mysql.com/downloads/repo/apt/ 这里下…...

cursor机器码重置

1、下载vscode插件 cursor-fake-machine-0.0.2 2、将插件拖入拓展 3、彻底将cursor账号退出 setting -> Manage -> 退出账号 4、打开cursor&#xff0c;ctrlshiftp &#xff0c;输入fake,点击确定...

深度学习的疑问--综合【2】:像CNN,GNN,transformer等这些模型都是用于提取特征,然后经过全连接层实现分类的吗?

总结&#xff1a; CNN&#xff0c;GNN&#xff0c;transformer等这些模型都是用于提取特征&#xff1b;FC、MLP等用于实现分类&#xff0c;MLP即是多个FC组成的。 是的&#xff0c;从高层次来看&#xff0c;CNN&#xff08;卷积神经网络&#xff09;、GNN&#xff08;图神经网络…...

基于编程的运输设备管理系统设计(vue+springboot+ssm+mysql8.x)

基于编程的运输设备管理系统设计&#xff08;vuespringbootssmmysql8.x&#xff09; 运输设备信息管理系统是一个全面的设备管理平台&#xff0c;旨在优化设备管理流程&#xff0c;提高运输效率。系统提供登录入口&#xff0c;确保只有授权用户可以访问。个人中心让用户可以查…...

SpringBoot整合MyBatis

一、SpringBoot整合MyBatis 步骤1&#xff1a;创建新模块&#xff0c;选择Spring初始化&#xff0c;并配置模块相关基础信息 步骤2&#xff1a;选择当前模块需要使用的技术集&#xff08;MyBatis、MySQL&#xff09; 步骤3&#xff1a;设置数据源参数 spring:datasource:dr…...

kali——masscan

目录 前言 使用方法 前言 Masscan 是一款快速的端口扫描工具&#xff0c;在 Kali Linux 系统中常被用于网络安全评估和渗透测试。 使用方法 对单个IP进行端口扫描&#xff1a; masscan -p11-65535 192.168.238.131 扫描指定端口&#xff1a; masscan -p80,22 192.168.238.131…...

数字化转型中的开源AI智能客服与S2B2C商城小程序的融合创新

摘要 数字经济时代&#xff0c;企业需通过技术重构用户交互与供应链体系。本文以“开源AI智能客服”“AI智能名片”及“S2B2C商城小程序”为核心&#xff0c;研究三者如何通过技术协同与场景化应用实现企业营销、客户服务与供应链管理的智能化升级。通过案例分析、技术架构设…...

2-Docker常用命令

1. Docker 帮助启动类命令 1.1 启动 docker&#xff1a; systemctl start docker [rootlocalhost ~]# systemctl start docker1.2 停止 docker&#xff1a; systemctl stop docker [rootlocalhost ~]# systemctl stop docke1.3 重启 docker&#xff1a; systemctl restart d…...

理解OSPF 特殊区域NSSA和各类LSA特点

本文基于上文 理解OSPF Stub区域和各类LSA特点 在理解了Stub区域之后&#xff0c;我们再来理解一下NSSA区域&#xff0c;NSSA区域用于需要引入少量外部路由&#xff0c;同时又需要保持Stub区域特性的情况 一、 网络总拓扑图 我们在R1上配置黑洞路由&#xff0c;来模拟NSSA区域…...

Chapter01_绪论

文章目录 数字图像处理导论⭐图像的分类数字图像处理的概念&#xff08;狭义&#xff09;⭐数字图像处理的基本特征图像分析 ⭐数字图像处理的组成⭐数字图像处理研究的基本内容 数字图像处理导论 ⭐图像的分类 模拟图像&#xff1a;二维空间和亮度值都是连续&#xff08;值&a…...

SDL显示YUV视频

文章目录 1. **宏定义和初始化**2. **全局变量**3. **refresh_video_timer 函数**4. **WinMain 函数**主要功能及工作流程&#xff1a;总结&#xff1a; 1. 宏定义和初始化 #define REFRESH_EVENT (SDL_USEREVENT 1) // 请求画面刷新事件 #define QUIT_EVENT (SDL…...

频域滤波函数 To 空域冲激响应函数

从频域滤波函数 H ( u , v ) H(u, v) H(u,v)到空域冲激响应函数 h ( x , y ) h(x, y) h(x,y)的变换。 不是冈萨雷斯这么简单的IDFT&#xff0c;有两次移位。这么费劲是因为DFT定义在第一象限。而且要求滤波器的尺寸为奇数&#xff0c;零的个数没有影响。 逆中心移位变换&…...

【C++】C++11<包装器没写>

文章目录 一、初始化列表的统一1.列表初始化2.initializer_list 二、声明1.auto2.decltype3.nullptr 三、范围for四、智能指针五、STL中的变化1.新容器arrayforward_list 2.接口 六、右值引用1.左值引用和右值引用2.右值引用的使用场景和意义3.左值引用和右值引用的价值和场景4…...

《如何避免虚无》速读笔记

文章目录 书籍信息概览躺派&#xff08;出世&#xff09;卷派&#xff08;入世&#xff09;虚无篇&#xff1a;直面虚无自我篇&#xff1a;认识自我孤独篇&#xff1a;应对孤独幸福篇&#xff1a;追寻幸福超越篇&#xff1a;超越自我 书籍信息 书名&#xff1a;《如何避免虚无…...

【微机及接口技术】- 第四章 内部存储器及其接口(中)

文章目录 第三节 半导体存储器与CPU的连接一、存储芯片与CPU连接中应关注的问题二、存储器扩展1. 位扩展&#xff1a;2. 字扩展3. 字位扩展 三、实现片选控制的方法1. 全译码法2. 部分译码法3. 线选法 第三节 半导体存储器与CPU的连接 一、存储芯片与CPU连接中应关注的问题 C…...

Mysql 数据库下载安装

安装准备 步骤1&#xff1a;输入WindowsMysql下载地址&#xff1a;https://dev.mysql.com/downloads/&#xff0c;选择MySQL Installer for Windows。 步骤2&#xff1a;下载MySQL安装文件 mysql-install-community-8.0.22.0.msi 步骤3&#xff1a;登录MySQL, 如…...

蓝桥杯刷题笔记

奇怪的捐赠 #include <cstdio> #include <iostream> #include <cmath> using namespace std; int main(){// 初始化变量num为1000000&#xff0c;代表总金额为100万元int num 1000000;// 初始化变量cnt为0&#xff0c;用于记录最终划分的份数int cnt 0;//…...

数仓开发团队日常1

第一章:数据的召唤 2005年7月18日,星期一,上午8:30 城市商业银行总行大楼 盛夏的阳光透过高耸的银行大楼玻璃幕墙,在大理石地面上投下斑驳的光影。李明远站在城市商业银行总行大厦前,抬头望着这座在城市金融区并不算高的建筑,却感到一种莫名的压迫感。他整了整领带,深…...

Pgvector的安装

Pgvector的安装 向量化数据的存储&#xff0c;可以为 PostgreSQL 安装 vector 扩展来存储向量化数据 注意&#xff1a;在安装vector扩展之前&#xff0c;请先安装Postgres数据库 vector 扩展的步骤 1、下载vs_BuildTools 下载地址&#xff1a; https://visualstudio.microso…...

学习笔记—C++—入门基础()

目录 C介绍 参考文档 C第一个程序 命名空间namespace namespace的价值 namespace的定义 namespace使用 指定命名空间访问 using将命名空间中某个成员展开 展开命名空间中全部成员 输入和输出 缺省参数 函数重载 引用 引用的概念 应用 const引用 指针和引用的关…...

Pytorch实现之利用深度残差GAN做运动图像的去模糊

简介 简介:采用类似U-Net的解码编码的结构,结合10层的残差连接结构作为生成器,改进PatchGAN得到更大的感受野来作为鉴别器。生成器的损失为内容损失,鉴别器的损失为WGAN-GP损失。大家可以尝试这个模型来解决运动图像的去模糊化。 论文题目:基于深度残差生成对抗网络的运…...

[Windows] XHS-Downloader V2.4 | 小红书无水印下载工具 支持多平台批量采集

[Windows] XHS-Downloader 链接&#xff1a;https://pan.xunlei.com/s/VON4ygFN1JcyzLJJIOqIpqodA1?pwdsinu# XHS-Downloader 是一款开源免费的小红书内容下载工具&#xff0c;支持无水印视频 / 图文提取、多链接批量处理及账号作品采集。其核心优势包括&#xff1a; 全平台…...

从零构建大语言模型全栈开发指南:附录与资源-2.数据集大全-公开语料库、多模态数据集与领域专用数据源

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 附录与资源-2. 数据集大全:公开语料库、多模态数据集与领域专用数据源一、公开语料库:通用语言模型的基石1.1 主流文本语料库1.2 预处理工具与策略二、多模态数据集:跨模态理解的桥梁2.1 视觉-语言数…...

SDL多线程编程

文章目录 1. SDL 线程基础2. 线程同步3. 线程池4. 注意事项5. 示例:在多个线程中进行图形渲染和输入处理总结在 SDL(Simple DirectMedia Layer)中,多线程编程通常用于提高应用程序的响应性和性能,尤其是在需要同时处理多个任务的场景中,例如渲染、输入处理和音频等。SDL …...

LINUX 4 tar -zcvf -jcvf -Jcvf -tf -uf

cp -r mv: 1.移动文件到目录 2.文件改名 3.目录改名 s 上面是打包 下面是打包并压缩...

STL剖析

1. vector 是一个封装了动态大小数组的顺序容器&#xff1b;数组内容器严格按照线性顺序排序&#xff0c;支持随机访问&#xff0c;因此提供随机访问指针&#xff0c;例如vector::iterator ivite; 并且为了降低空间配置得速度成本&#xff0c;vector实际分配大小要比需求大一点…...

【数据集】Romanov数据集

1. 数据集背景 名称&#xff1a;Romanov 单细胞转录组数据集 来源&#xff1a;Romanov et al., Cell Reports, 2017 原始论文标题&#xff1a; "Molecular interrogation of hypothalamic organization reveals distinct dopamine neuronal subtypes" GEO Accession…...

Baklib企业CMS的核心要素是什么?

企业CMS工作流协同创新 现代企业内容管理的核心挑战在于多角色协作效率与流程可视化的平衡。以Baklib为代表的协同型CMS&#xff0c;通过动态权限分级架构与实时版本追踪技术&#xff0c;构建了从内容草拟、多级审批到版本发布的完整闭环。系统支持多人同时编辑功能&#xff0…...

JavaWeb 课堂笔记 —— 02 JavaScript

本系列为笔者学习JavaWeb的课堂笔记&#xff0c;视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程&#xff0c;实现javaweb企业开发全流程&#xff08;涵盖SpringMyBatisSpringMVCSpringBoot等&#xff09;》&#xff0c;章节分布参考视频教程&#xff0c;为同样学习…...

Kafka 回溯消费

Kafka 回溯消费 是一个非常实用的能力&#xff0c;尤其当你&#xff1a; 消费端挂掉/处理异常消息数据出错/业务需要重跑要对某一段历史数据“重新拉取并消费”日志审计/数据补偿/BI分析 下面我来详细讲讲 Kafka 如何实现“回溯消费”&#xff0c;并配上使用方式、注意事项 &…...