/*
新增
*/
Create Proc AddData
(
),
),
@Values nvarchar(max)
)
as
declare @Sql nvarchar(max)
declare @Field nvarchar(max)
declare @Value nvarchar(max)
set @Sql = ''
set @Field = ''
set @Value = ''

begin try
    set @Sql += 'Insert into ' + @TableName + '('
    )
    begin
        ,charindex(',',@Fields)) + ',';
        ,charindex(',',@Values)) + ''',';

        ,len(@Fields) - charindex(',',@Fields))
        ,len(@Values) - charindex(',',@Values))
    end
    set @Sql += @Field + @Fields + ') values (' + @Value + '''' + @Values + ''')';

    exec @Sql
    Select @@Identity as 'Msg'
end try
begin catch
    select ERROR_MESSAGE() as 'Msg'
end catch
go

/*
修改
*/
Create Table EditData
(
),
),
@Values nvarchar(max),
@UpdateWhere nvarchar(max)--条件必须,如更新全部,则传1=1
)
as
declare @Sql nvarchar(max)
declare @SetFiled nvarchar(max)
declare @Field nvarchar(max)
declare @Value nvarchar(max)
set @Sql = ''
set @SetFiled = ''
set @Field = ''
set @Value = ''

begin try
    if(isnull(@UpdateWhere,'') != '')
    begin
        set @Sql += 'Update ' + @TableName + ' set '
        )
        begin
            ,,charindex(',',@Values)) + '''' + ',';
            ,len(@Fields) - charindex(',',@Fields))
            ,len(@Values) - charindex(',',@Values))
        end
        set @Sql += @SetFiled + @Fields + ' = ' + @Values + ' where ' + @UpdateWhere;
        exec @Sql
        ' as 'Msg'
    end
    else
    begin
        Select '更新条件是必须的,如无条件,请传值“1=1”' as 'Msg'
    end
end try
begin catch
    select ERROR_MESSAGE() as 'Msg'
end catch

闲的写写SQL的更多相关文章

  1. 如何 在远程虚拟机 里 破解 最新版 SQL Prompt

    玩数据的人 经常 写写 SQL,SQL Prompt 是蛮好用的 辅助工具 ,现在 的 主流 破解工具 都是 需要  断开网路的 但是 现在 有些  开发环境 都是 在 云虚拟机 里,比如 客户方的. ...

  2. SQL Server视图

    想来想去,总想写写SQL Server方面的知识,像视图.存储过程,大数据量操作的优化等等. 先把基础的知识总结个遍先,然后再寻求更高更远的发展.这篇文章,将带大家来看看视图. 何谓视图,视图包含行和 ...

  3. Hibernate执行SQL语句实现查询修改功能!

    今天玩Hibernate时突然就想写写SQL语句查询... DAO : //查询 public List<?> createSqlQueryList(final String queryS ...

  4. MySQL入门(一)

    最近一直都在搞新员工的培训材料,MySQL的培训PPT我居然写了100多页,我都佩服我自己的毅力了.不如现在把这些总结一下,慢慢写到博客里,供入门者参考. 一 关系型数据库 关系型数据库的理论提出于上 ...

  5. Mybatis入门 digest

    http://www.mybatis.org/mybatis-3/zh/configuration.html userDao-mapping.xml相当于是UserDao的实现, 同时也将User实体 ...

  6. JDOM与DOM主要有两方面不同

    我这丝毫没有吐槽的意思哟,只是想说作为一个合格的程序员大家最起码需要做到思维严谨这点,在有能力的情况下对用户体验能提点建议最好.自己写的代码一定要经过严格测试再交付,不要指望测试人员帮你测试再去修改, ...

  7. 2019 Valentine's Day 圣地巡礼和WPR003N开箱刷U-boot记录

    即兴打出这个标题,似乎性息量有点大,后面的内容真的和你想象的是一样的吗? 自上一篇blog告别这里有多少年了,掐指一算,今天是一个回归的日子,看着这里搭上云之路,渐渐的变成了云主机中的一员,感慨时事境 ...

  8. mybatis 一二事(1) - 简单介绍

    mybatis呢是一个orm数据库框架,非常适合新人学,门槛相对较低 本人呢曾经是先做的hibernate,后接触的mybatis,接触mabatis前我比较抵触,为啥呢, 当时喜欢hibernate ...

  9. Replace Type Code With Class和Replace Type Code With Subclass和Replace Type Code With State/Strategy

    周末闲来写写看书总结,今天写<重构>中的3个重要手法,分别是Replace Type Code With Class.Replace Type Code With Subclass和Rep ...

随机推荐

  1. error: RPC failed; result=22, HTTP code = 411

    git config http.postBuffer 524288000orgit config --system http.postBuffer 524288000  

  2. 通过Request.Form获取同name的checkbox所有值

    转自:http://www.cnblogs.com/Fred_Xu/archive/2013/01/16/how-to-get-the-checkbox-value-from-a-dynamicall ...

  3. Python之路【第十九章】:Django 数据库对象关系映射

    Django ORM基本配置 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去 ...

  4. iOS,非视图类方法

    1.判断类的实例 2.获取当前最高层Window 3.获取当前app是否活跃 4.允许所有请求 5.判断设备是否越狱 6.移除字符串换行符和空格 7.iOS注释方法或属性废弃或不可用 8.本地通讯录操 ...

  5. 使用MapReduce实现join操作

     在关系型数据库中,要实现join操作是非常方便的,通过sql定义的join原语就可以实现.在hdfs存储的海量数据中,要实现join操作,可以通过HiveQL很方便地实现.不过HiveQL也是转化成 ...

  6. 转载:谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词

    转载: 谈谈Unicode编码,简要解释UCS.UTF.BMP.BOM等名词 这是一篇程序员写给程序员的趣味读物.所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级 ...

  7. nyist 78 圈水池

    http://acm.nyist.net/JudgeOnline/problem.php?pid=78 圈水池 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有一个 ...

  8. spring boot 添加jsp支持注意事项

    1.一定要使用war包<packaging>war</packaging>2.将provided改为compile,具体如下: <dependency> <g ...

  9. VBA控制outlook自动发送邮件(转)

    使用Excel VBA实现Outlook自动发送邮件 | 在工作上我们都会遇到批量发送邮件的情况,面对重复而规律性的工作,可以使用Excel的VBA实现自动批量化发送邮件.大大减小工作时间,提升工作效 ...

  10. 列表边框column-rule

    column-rule主要是用来定义列与列之间的边框宽度.边框样式和边框颜色.简单点说,就有点类似于常用的border属性.但column-rule是不占用任何空间位置的,在列与列之间改变其宽度不会改 ...