【C#SQL存储过程调用值】教程文章相关的互联网学习教程文章

c# – 运行MySql存储过程的最低访问级别【代码】

我正在尝试设置连接到MySQL数据库8.0的.NET 4.7.1程序,以使用最低权限运行..NET程序使用MySql.Data进行连接.用户执行存储过程的最小权限通常只是EXECUTE特权.从MySQL工作台或命令行可以正常工作. 运行.NET程序时,会返回以下异常:System.Data.SqlTypes.SqlNullValueException:’数据为空.无法在Null值上调用此方法或属性. 为了方便起见,我创建了一个非常小的演示程序来演示这个问题. 数据库的设置:CREATE DATABASE Spike;CREATE ...

在C#中访问SQL Server存储过程输出参数【代码】

我有一个简单的SQL Server存储过程:ALTER PROCEDURE GetRowCount( @count int=0 OUTPUT )AS Select * from Emp where age>30; SET @count=@@ROWCOUNT;RETURN我试图访问以下C#代码中的输出参数:SqlConnection con = new SqlConnection(); con.ConnectionString = "Data Source=localhost\\SQLEXPRESS;Initial Catalog=answers;Integrated Security=True";SqlCommand cmd = new SqlCommand(); cmd.Connection = con;cmd.CommandTex...

c# – MySQL ODBC存储过程结果缺少列【代码】

我有一组存储过程,我用来填充ASP.Net CheckBoxList.从代码运行此过程为{CALL ProcedureName(params);使用类型设置为存储过程,我似乎只得到一个部分结果(即实际结果中的许多列都丢失了.) 如果我从查询中复制CommandText(使用断点来获取发送的确切文本)并直接在Navicat(或任何其他MySQL GUI)中运行它,我会获得所有预期的列. 这是不起作用的代码:using (OdbcCommand command = OdbcConnection.CreateCommand()) {command.CommandType...

在C#中键入安全绑定到Oracle存储过程?【代码】

我们正在使用Oracle数据库在C#中部署多个项目.我想在Oracle存储过程中实现所有数据库逻辑 >将所有数据库逻辑保留在数据库中>使数据库结构更改时更容易维护>允许跨编程语言更轻松地重用存储过程 我运行测试代码,在那里使用SYS_REFCURSOR返回行,并且我在结果上手动执行数据绑定,因为SYS_REFCURSOR可以返回任何内容 – 即它不是类型安全的 我的问题是 – 有什么办法可以在存储过程返回类型中定义正确的类型,并在我的C#代码中安全地正确...

C#DataTable到Oracle存储过程【代码】

我需要做的是将C#DataTable传递给Oracle存储过程. 这是我做的: 甲骨文方面: >创建了一个类型:create or replace TYPE CUSTOM_TYPE AS OBJECT ( attribute1 VARCHAR(10),attribute2 VARCHAR(10) );>创建了一个表create or replace TYPE CUSTOM_TYPE_ARRAY AS TABLE OF CUSTOM_TYPE;>创建了一个存储过程create or replace PROCEDURE SP_TEST (P_TABLE_IN IN CUSTOM_TYPE_ARRAY,P_RESULT_OUT OUT SYS_REFCURSOR ) AS --P_TABLE_...

c# – 更改数据库迁移中的存储过程EF 6 Code First – 如何为参数默认传递null【代码】

我正在使用空迁移来更新我的数据库中的存储过程.存储过程是在数据库的初始创建中添加的自定义存储过程. 我在DbMigration类中发现了’AlterStoredProcedure’方法,这可以更新存储过程,但是我必须通过存储过程的参数,我想将布尔值和一些整数的默认值设置为null,但我似乎无法让这个工作.AlterStoredProcedure(name: "[dbo].[FT_People_PersonFullTextSearch]",parametersAction: p => new { searchTerm = p.String(600), isArchived =...

如何使用ADO.NET和存储过程在数据库中保存复杂的C#对象?【代码】

我有一个复杂的C#对象,需要在数据库中的多个表(大约12个)中持久化:class Foo {public Guid FooId { get; set; }public Bar[] Bars { get; set; } }class Bar {public Guid BarId { get; set; }public Guid FooId { get; set; }public Baz[] Bazs { get; set; } }class Baz {public Guid BazId { get; set; }public Guid BarId { get; set; }// And so on ... }问题: >将此复杂对象(Foo实例)作为输入发送到存储过程的最佳方法是什...

c#代码首先使用存储过程版本控制进行数据库迁移【代码】

我们的项目使用EF代码第一种方法,它有很多存储过程. 目前我们生成这样的DbMigration代码var scripts = StoredProcedureMigrationHelper.GetSqlBatchFromEmbeddedResource("myStoredProc.sql");foreach (var script in scripts){Sql(script);}这个问题是每次我更新存储过程时,我都要创建新的sql文件,名称约定为“myStroedProc_versionX”.哪个有效但失去了版本控制权益,例如显示版本之间的差异. 是否有一种方法/不同的方法来首先用代...

SQL Server 2008 R2存储过程不起作用(visual c#)【代码】

我在过去一周左右搜索并尝试了不同的东西,我的问题可能是通过谷歌找到答案. 如果我在SQL Server Management Studio中执行此查询并将参数@zoekterm替换为’%something%’,它可以正常工作并返回我想要的结果.但是当我从C#调用相同的程序时,它什么也没有返回. 这是一个错误还是我那么愚蠢? 这是C#中存储过程和函数的代码,(我知道我应该使用switch case …) 存储过程:-- ============================================= -- Author:...

将参数传递给c#中的sql存储过程【代码】

string commandGetIslemIdleri = ("EXEC GetIslemIdleri");cmd = new SqlCommand(commandGetIslemIdleri, sqlConn);cmd.Parameters.Add(new SqlParameter("@CARIID", 110));using (var reader = cmd.ExecuteReader()) //error occurs here{while (reader.Read()){islemidleri.Add(reader.GetInt32(0));}}上面是我试图编写的代码,用参数CARIID调用以下存储过程,该参数是一个整数.当我运行代码时发生错误,并说“过程或函数’GetIslem...

c# – 包含SqlGeometry的数据表导致存储过程执行失败…为什么?【代码】

我正在尝试将一系列SqlGeometry值保存到SQL Server 2008数据库. 基本上我在SQL Server存储过程中有一个tabletype,如下所示:CREATE TYPE [dbo].[TableType_Example] AS TABLE ([SpatialID] [bigint] NOT NULL,[RecordID] [bigint] NOT NULL,[geom] [geometry] NOT NULL )然后我在C#中构建一个数据表并像这样发送:public static bool SaveSpatialDataElements(long recordID, List<BOSpatial> featureList) {//Setup features data...

C#SQL存储过程调用值【代码】

尝试与数据库进行通信时,我对如何将值作为参数(例如itemID)传递并获取具有此ID的记录感到困惑. 这是我的存储过程:ALTER PROCEDURE [dbo].[sp_lightItem] (@itemID INT ) AS BEGINSELECT [itemID],[itemName],[itemLocation],[itemChBy] FROM [dbo].[Item] WHERE itemSystemType='E' and itemID=@itemID ORDER BY itemID DESC; END到目前为止这是我的c#代码..public string LoadItemNew(int ItemID){var acf = new AcFunctions...

C#中的TransactionScope可以触发SQL Server中存储过程的回滚吗?

我有一个问题 – 是否可以使用using(块和TransactionScope,在sql server上执行多个非查询,并在一个失败时回滚所有存储过程)在C#端创建逻辑? 约束:我无法创建更大的存储过程来执行TSQL事务中的其他存储过程.– 存储过程中没有’commit’,只返回0;在末尾. 这是否意味着如果事务失败/超时/我没有点击transaction.Complete(),它们能够自动回滚?我是否需要将ROLLBACK插入到此功能的存储过程中? 我努力寻找,但我无法找到这个有点独特...

c# – 有没有办法将对象或列表传递给sql server存储过程?【代码】

参见英文答案 > to SQL Stored Procedure' rel='nofollow' target='_blank'>Passing List 8个我想将对象或列表传递给sql server存储过程.我的目的是通过存储过程一次插入多个记录. 那么,有什么办法吗?解决方法:你可以使用sqlParameter.喜欢:SqlParameter param1 = new Sqlparameter(SPVariablename , ValueofVariablewhichYouWantToPass)任何你想要param2,param3和最后的参数cmd.Parameter....

C#Sql Server – 执行存储过程很多次.最好的办法?【代码】

我有一个存储过程将数据插入3个表中(UPSERTS),并且有一些逻辑. (IF-THEN-ELSE) 我需要使用不同的参数执行这个Sproc数百万次(来自C#应用程序),我需要它是快速的. 这样做的最佳方法是什么? 除了Lucene或Sql Server FTS之外,有没有人知道开源(或不是)现成的文档索引器? *我正在尝试构建一个文档单词索引.对于文档中的每个单词,我在DB中插入单词,docID和单词位置. 例如,对于100个文档,这发生了100000次. Sproc:有3个表可插入,每个表...