==================================声明==================================

本文原创,转载在正文中显要的注明作者和出处,并保证文章的完整性。

未经作者同意请勿修改(包括本声明),保留法律追究的权利。

未经作者同意请勿用于出版、印刷或学术引用。

本文不定期修正完善,为保证内容正确,建议移步原文处阅读。

本文链接:http://www.cnblogs.com/wlsandwho/p/4305767.html

=======================================================================

学SQL Server 2008时遇到的,记录下来。

================================================资源链接==================

使用的是sql server 2008 r2 express with advance service

    Windows7

在网上找了点资源,又买了本书:

在线视频 http://school.itzcn.com/video-vid-1932-spid-48.html

离线视频http://download.csdn.net/detail/wlsgzl/6751591

还有baidu和帮助手册。

这么准备,基本上学习一下应该是没问题的。

================================================资源勘误==================

离线视频中:

第4章 SQL Server 2008数据表管理 SQL 2008完全学习手册 视频教程  1.swf 讲的有问题,可参见http://blog.sina.com.cn/s/blog_49998558010009jy.html

                                   2.swf和3.swf的文件命名应为3.swf和2.swf

================================================书写问题==================

sqlcmd 连接服务器失败

    -S

    是大写,服务器名大小写无所谓

================================================权限问题==================

附加数据库失败

     错误:5120

解决办法:
1.打开该文件的属性窗口,选择“属性”->“安全”->“编辑”。
2.在“组或用户名”中,选择“Authenticated Users”,在“权限”中选择“完全控制”。
3.选择"确定"按钮,关闭对话框。

附加数据库成功。

================================================设置问题==================

更改已有的表,提示“不允许保存更改”

解决办法:

在工具-选项中

================================================设置问题==================

使用 sp_rename 更改表名称,提示:“注意:更改对象名的任意部分都可能会破坏脚本和存储过程”

解决办法:暂无

===============================================================!!!!!!!!====

第5章 2.swf 修改删除视图

过早的引入了复杂的join和on

================================================资源勘误==================

第5章 10.swf 聚集索引和非聚集索引

按照讲解顺序,应该叫 4.5.swf。

================================================1234==================

insert...select...

0 创建:

  1. USE [人事管理系统]
  2. GO
  3.  
  4. CREATE TABLE [dbo].[新员工信息2](
  5. [员工编号] [int] PRIMARY KEY IDENTITY(1,1) NOT NULL,
  6. [员工姓名] [nvarchar](10) NULL,
  7. [所在部门编号] [int] NULL,
  8. [所任职位] [nvarchar](20) NULL,
  9. [性别] [nvarchar](5) NULL,
  10. [籍贯] [nvarchar](30) NULL,
  11. [婚姻状况] [nvarchar](5) NULL,
  12. [政治面貌] [nvarchar](10) NULL,
  13. [文化程度] [nvarchar](10) NULL,
  14. [专业] [nvarchar](30) NULL,
  15. [联系电话] [int] NULL,
  16. [入职时间] [datetime] NULL,
  17. [离职时间] [datetime] NULL,
  18. [在职状态] [nvarchar](10) NULL,
  19. [照片] [image] NULL,
  20. [年龄] [int] NULL,
  21. [邮编] [dbo].[postcode] NULL,
  22. [分数] [int] NULL
  23. )
  24. GO

1 分析、执行:

  1. INSERT INTO dbo.新员工信息2
  2. SELECT *
  3. FROM dbo.新员工信息

提示:

  1. 消息 8101,级别 16,状态 1,第 1
  2. 仅当使用了列列表并且 IDENTITY_INSERT ON 时,才能为表'dbo.新员工信息2'中的标识列指定显式值。

2 分析、执行:

  1. SET IDENTITY_INSERT dbo.新员工信息2 ON
  2. INSERT INTO dbo.新员工信息2
  3. SELECT *
  4. FROM dbo.新员工信息
  5.  
  6. SET IDENTITY_INSERT dbo.新员工信息2 OFF

提示:

  1. 消息 8101,级别 16,状态 1,第 2
  2. 仅当使用了列列表并且 IDENTITY_INSERT ON 时,才能为表'dbo.新员工信息2'中的标识列指定显式值。

3 分析、执行:

  1. SET IDENTITY_INSERT dbo.新员工信息2 ON
  2. INSERT INTO dbo.新员工信息2
  3. ( 员工姓名 ,
  4. 所在部门编号 ,
  5. 所任职位 ,
  6. 性别 ,
  7. 籍贯 ,
  8. 婚姻状况 ,
  9. 政治面貌 ,
  10. 文化程度 ,
  11. 专业 ,
  12. 联系电话 ,
  13. 入职时间 ,
  14. 离职时间 ,
  15. 在职状态 ,
  16. 照片 ,
  17. 年龄 ,
  18. 邮编 ,
  19. 分数
  20. )
  21. SELECT 员工姓名 ,
  22. 所在部门编号 ,
  23. 所任职位 ,
  24. 性别 ,
  25. 籍贯 ,
  26. 婚姻状况 ,
  27. 政治面貌 ,
  28. 文化程度 ,
  29. 专业 ,
  30. 联系电话 ,
  31. 入职时间 ,
  32. 离职时间 ,
  33. 在职状态 ,
  34. 照片 ,
  35. 年龄 ,
  36. 邮编 ,
  37. 分数
  38. FROM dbo.新员工信息
  39. SET IDENTITY_INSERT dbo.新员工信息2 OFF

提示:

  1. 消息 545,级别 16,状态 1,第 2
  2. IDENTITY_INSERT 设置为 ON 或某个复制用户向 NOT FOR REPLICATION 标识列中插入内容时,必须为表 '新员工信息2' 中的标识列指定显式值。

4 (我了个草,不知道在界面改了原始表的ID的什么东西,难道是复制选项?只运行第二条居然能运行了。这让我还怎么接着往下写啊!!!!)

================================================资源勘误==================

第6章 12.swf DELETE语句

视频不完整

================================================个人总结==================

第7章

  表A(字段1,字段2) 表B(字段a,字段b)
内/等值 =
 
 
交叉 1a 1b 2a 2b
A、B是一个表
     

================================================XML相关===================

额外的参考资料,下面的评论也是极好的。

http://www.2cto.com/database/201308/235061.html

http://www.cnblogs.com/lwhkdash/archive/2012/06/26/2562979.html

================================================存储过程===================

错误的语法:“CREATE PROC”必须是批处理中仅有的语句

解决方法:http://zhidao.baidu.com/question/450116542.html

     之间添加GO

如图:

================================================错误916===================    

问题:

解决方法:在视图中选择对象资源管理器详细信息(F7),在列标题上点击右键,取消排序规则的选中。

取消排序规则

刷新

================================================消息208===================

  1. CREATE PARTITION FUNCTION PartFunc_SlaveData(DATETIME)
  2. AS RANGE RIGHT
  3. FOR VALUES( '20150101',
  4. '20160101',
  5. '20170101',
  6. '20180101',
  7. '20190101',
  8. '20200101',
  9. '20210101',
  10. '20220101',
  11. '20230101',
  12. '20240101',
  13. '20250101')
  14. GO
  15.  
  16. CREATE PARTITION SCHEME PartSch_SlaveData
  17. AS PARTITION PartFunc_SlaveData
  18. TO ( EnzymeDotPerior,
  19. EnzymeDot2015,
  20. EnzymeDot2016,
  21. EnzymeDot2017,
  22. EnzymeDot2018,
  23. EnzymeDot2019,
  24. EnzymeDot2020,
  25. EnzymeDot2021,
  26. EnzymeDot2022,
  27. EnzymeDot2023,
  28. EnzymeDot2024,
  29. EnzymeDot2025)

显示消息

  1. 消息 208,级别 16,状态 58,第 1
  2. 对象名 'EnzymeDot2015' 无效。

解决方法:

  1. ALTER DATABASE EnzymeDot ADD FILEGROUP ENZYMEDOTPERIOR
  2. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2015
  3. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2016
  4. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2017
  5. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2018
  6. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2019
  7. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2020
  8. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2021
  9. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2022
  10. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2023
  11. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2024
  12. ALTER DATABASE EnzymeDot ADD FILEGROUP EnzymeDot2025

疑问:难道添加文件组只能用命令的方式吗?

参考资料:作者faith_shaw http://zhidao.baidu.com/link?url=eKS1a4ahKN4YbI1_ZtGWjfnloG2HR-iisss1XHWLdDJ2x0ojhqrwWDeX1vdLHoZxDlMbmAa5uj-L6JpigX2LtK

================================================随机数据===================

指定字典集中的随机字符串

  1. CREATE PROCEDURE dbo.GetRandStr
  2. (
  3. @Count INT ,
  4. @no VARCHAR(8) OUTPUT
  5. )
  6. AS
  7. BEGIN
  8. DECLARE @RANDOMSTR VARCHAR(100) ,
  9. @CHARPOOL VARCHAR(36) ,
  10. @ss VARCHAR
  11. DECLARE @I INTEGER ,
  12. @counter INTEGER
  13. SET @CHARPOOL = '0123456789abcdefghijklmnopqrstuvwxyz'
  14. SET @I = 1
  15. SET @RANDOMSTR = ''
  16. WHILE @I <= @Count
  17. BEGIN
  18. HERE:
  19. SET @counter = CAST(RAND() * 100 / 2.75 AS INTEGER)
  20. IF @counter < 1
  21. GOTO HERE
  22. SET @RANDOMSTR = @RANDOMSTR + SUBSTRING(@CHARPOOL, @counter, 1)
  23. SET @I = @I + 1
  24. END
  25. SET @no = LEFT(@RANDOMSTR, ISNULL(@Count, 8))
  26. RETURN
  27. END
  28. GO

使用方法

  1. DECLARE @something VARCHAR(12)
  2. EXEC GetRandStr 6, @something OUTPUT
  3. PRINT @something
  4. EXEC GetRandStr 6, @something OUTPUT
  5. PRINT @something
  6. GO

作者/链接http://bbs.csdn.net/topics/370210814

================================================随机数据===================

指定范围内的随机时间

方法1

  1. declare @t1 datetime,@t2 datetime,@dd int
  2. set @t1='2010-01-01 00:00:00'
  3. set @t2='2025-12-31 00:00:00'
  4. set @dd=datediff(dd,@t1,@t2)*rand()
  5. select dateadd(dd,@dd,@t1) +RAND()

方法2

  1. SELECT
  2. TOP 10
  3. CAST(CHECKSUM(newID())%40357 AS DATETIME)+RAND() AS 隨機值
  4. FROM syscolumns b

作者/链接 http://bbs.csdn.net/topics/340033413

http://bbs.csdn.net/topics/340165720

================================================分区表===================

作者smallfools链接http://blog.csdn.net/smallfools/article/details/4930810

写的很通俗易懂。而且是一个系列,很赞啊。

大致的看了下,我也试了一下。

贴出脚本。仅供学习交流,勿用于商业行为。

1创建数据库,同时创建文件和文件组。

  1. CREATE DATABASE [SomeTest] ON PRIMARY
  2. ( NAME = N'SomeTest', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\SomeTest.mdf' , SIZE = 30720KB , FILEGROWTH = 10%),
  3. FILEGROUP [ed15andPrior]
  4. ( NAME = N'ed15andPrior', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed15andPrior.ndf' , SIZE = 30720KB , FILEGROWTH = 10%),
  5. FILEGROUP [ed16]
  6. ( NAME = N'ed16', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed16.ndf' , SIZE = 30720KB , FILEGROWTH = 10%),
  7. FILEGROUP [ed17]
  8. ( NAME = N'ed17', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed17.ndf' , SIZE = 30720KB , FILEGROWTH = 10%),
  9. FILEGROUP [ed18]
  10. ( NAME = N'ed18', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed18.ndf' , SIZE = 30720KB , FILEGROWTH = 10%),
  11. FILEGROUP [ed19]
  12. ( NAME = N'ed19', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed19.ndf' , SIZE = 30720KB , FILEGROWTH = 10%),
  13. FILEGROUP [ed20andLater]
  14. ( NAME = N'ed20andLater', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\ed20andLater.ndf' , SIZE = 30720KB , FILEGROWTH = 10%)
  15. LOG ON
  16. ( NAME = N'SomeTest_log', FILENAME = N'D:\HTSoftware\SomeTest\Database\sqlserver\DATA\SomeTest_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
  17. GO
  18. ALTER DATABASE [SomeTest] SET COMPATIBILITY_LEVEL = 100
  19. GO
  20. ALTER DATABASE [SomeTest] SET ANSI_NULL_DEFAULT OFF
  21. GO
  22. ALTER DATABASE [SomeTest] SET ANSI_NULLS OFF
  23. GO
  24. ALTER DATABASE [SomeTest] SET ANSI_PADDING OFF
  25. GO
  26. ALTER DATABASE [SomeTest] SET ANSI_WARNINGS OFF
  27. GO
  28. ALTER DATABASE [SomeTest] SET ARITHABORT OFF
  29. GO
  30. ALTER DATABASE [SomeTest] SET AUTO_CLOSE OFF
  31. GO
  32. ALTER DATABASE [SomeTest] SET AUTO_CREATE_STATISTICS ON
  33. GO
  34. ALTER DATABASE [SomeTest] SET AUTO_SHRINK OFF
  35. GO
  36. ALTER DATABASE [SomeTest] SET AUTO_UPDATE_STATISTICS ON
  37. GO
  38. ALTER DATABASE [SomeTest] SET CURSOR_CLOSE_ON_COMMIT OFF
  39. GO
  40. ALTER DATABASE [SomeTest] SET CURSOR_DEFAULT GLOBAL
  41. GO
  42. ALTER DATABASE [SomeTest] SET CONCAT_NULL_YIELDS_NULL OFF
  43. GO
  44. ALTER DATABASE [SomeTest] SET NUMERIC_ROUNDABORT OFF
  45. GO
  46. ALTER DATABASE [SomeTest] SET QUOTED_IDENTIFIER OFF
  47. GO
  48. ALTER DATABASE [SomeTest] SET RECURSIVE_TRIGGERS OFF
  49. GO
  50. ALTER DATABASE [SomeTest] SET DISABLE_BROKER
  51. GO
  52. ALTER DATABASE [SomeTest] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
  53. GO
  54. ALTER DATABASE [SomeTest] SET DATE_CORRELATION_OPTIMIZATION OFF
  55. GO
  56. ALTER DATABASE [SomeTest] SET PARAMETERIZATION SIMPLE
  57. GO
  58. ALTER DATABASE [SomeTest] SET READ_WRITE
  59. GO
  60. ALTER DATABASE [SomeTest] SET RECOVERY FULL
  61. GO
  62. ALTER DATABASE [SomeTest] SET MULTI_USER
  63. GO
  64. ALTER DATABASE [SomeTest] SET PAGE_VERIFY CHECKSUM
  65. GO
  66. USE [SomeTest]
  67. GO
  68. IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER DATABASE [SomeTest] MODIFY FILEGROUP [PRIMARY] DEFAULT
  69. GO

2创建分区函数和分区方案(scheme)

  1. USE SomeTest
  2. GO
  3.  
  4. CREATE PARTITION FUNCTION PartFunc_SlaveData(DATETIME)
  5. AS RANGE RIGHT
  6. FOR VALUES( '20160101',
  7. '20170101',
  8. '20180101',
  9. '20190101',
  10. '20200101')
  11. GO
  12.  
  13. CREATE PARTITION SCHEME PartSch_SlaveData
  14. AS PARTITION PartFunc_SlaveData
  15. TO (ed15andPrior,
  16. ed16,
  17. ed17,
  18. ed18,
  19. ed19,
  20. ed20andLater)

3创建使用分区方案的表,然后再添加非聚集的(联合)主键。

(感觉分开好点。我不是专业数据库人员,不明白为什么,这是我UI操作后到处的脚本修改的。但是可以用。)

  1. USE [SomeTest]
  2. GO
  3.  
  4. SET ANSI_NULLS ON
  5. GO
  6.  
  7. SET QUOTED_IDENTIFIER ON
  8. GO
  9.  
  10. CREATE TABLE [dbo].[SlaveData]
  11. (
  12. [Cmd] [nchar](4) NOT NULL ,
  13. [Num] [int] NOT NULL ,
  14. [Name] [nchar](10) NOT NULL ,
  15. [InnerID] [nchar](6) NOT NULL ,
  16. [Result] [tinyint] NOT NULL ,
  17. [ChkTime] [datetime] NOT NULL ,
  18. [Legal] [tinyint] NULL
  19. )
  20. ON PartSch_SlaveData(ChkTime)
  21. GO
  22.  
  23. ALTER TABLE dbo.SlaveData
  24. ADD CONSTRAINT PK_SlaveData PRIMARY KEY NONCLUSTERED
  25. (
  26. [InnerID] ASC,
  27. [ChkTime] ASC
  28. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  29. GO

下面来测试下。(所用的函数/过程/方法来自互联网,略有修改,在上文中已给链接。)

  1. USE [SomeTest]
  2. GO
  3.  
  4. SET ANSI_NULLS ON
  5. GO
  6.  
  7. SET QUOTED_IDENTIFIER ON
  8. GO
  9.  
  10. CREATE TABLE [dbo].[SlaveData]
  11. (
  12. [Cmd] [nchar](4) NOT NULL ,
  13. [Num] [int] NOT NULL ,
  14. [Name] [nchar](10) NOT NULL ,
  15. [InnerID] [nchar](6) NOT NULL ,
  16. [Result] [tinyint] NOT NULL ,
  17. [ChkTime] [datetime] NOT NULL ,
  18. [Legal] [tinyint] NULL
  19. )
  20. ON PartSch_SlaveData(ChkTime)
  21. GO
  22.  
  23. ALTER TABLE dbo.SlaveData
  24. ADD CONSTRAINT PK_SlaveData PRIMARY KEY NONCLUSTERED
  25. (
  26. [InnerID] ASC,
  27. [ChkTime] ASC
  28. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  29. GO
  1. USE SomeTest
  2.  
  3. DECLARE @i INT
  4. SET @i = 1
  5. DECLARE @someid NVARCHAR(12)
  6.  
  7. DECLARE @t1 DATETIME ,
  8. @t2 DATETIME ,
  9. @dd0 INT ,
  10. @dayadd INT ,
  11. @tRes DATETIME
  12. SET @t1 = '2010-01-01 00:00:00'
  13. SET @t2 = '2025-12-31 00:00:00'
  14. SET @dd0 = DATEDIFF(dd, @t1, @t2)
  15.  
  16. WHILE @i < 100 --数据规模
  17. BEGIN
  18. SET @dayadd = @dd0 * RAND()
  19. SET @tRes = DATEADD(dd, @dayadd, @t1) + RAND()
  20.  
  21. EXEC GetRandStr 6, @someid OUTPUT
  22.  
  23. --SELECT @tRes AS '日期时间',@someid AS '随即字符串'
  24. --PRINT @tRes
  25. --PRINT @someid
  26.  
  27. INSERT INTO dbo.SlaveData
  28. ( Cmd ,
  29. Num ,
  30. Name ,
  31. InnerID ,
  32. Result ,
  33. ChkTime ,
  34. Legal
  35. )
  36. VALUES ( N'test' , -- Cmd - nchar(4)
  37. 1 , -- Num - int
  38. N'aabbccddee' , -- Name - nchar(10)
  39. @someid , -- InnerID - nchar(6)
  40. 1 , -- Result - tinyint
  41. @tRes , -- ChkTime - datetime
  42. 1 -- Legal - tinyint
  43. )
  44.  
  45. SET @i = @i + 1
  46. END

查看

  1. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=1
  2. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=2
  3. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=3
  4. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=4
  5. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=5
  6. SELECT * FROM dbo.SlaveData WHERE $PARTITION.PartFunc_SlaveData(ChkTime)=6

================================================????===================

SQL Server 2008 R2——学习/练习/错误/总结/搜集的更多相关文章

  1. SQL Server 2008 R2 使用 PIVOT 错误

    SQL Server 2008 R2 使用 PIVOT 错误! 'PIVOT' 附近有语法错误.您可能需要将当前数据库的兼容级别设置为更高的值,以启用此功能. 有关 ALTER DATABASE 的 ...

  2. sql server 2008 R2连接失败 错误:18456

    这种问题的解决方法: 第一步:以windows验证模式进入数据库管理器. 第二步:在对新资源管理器中右击实例名称选择属性,弹出服务器属性对话框,我们在左侧栏选择[安全性]选项卡,选中”SQL Serv ...

  3. SQL Server 2008 R2 安装出错:Could not open key

    安装Sql Server 2008 R2 企业版出现错误提示无法继续安装,错误提示为: Could not open key: UNKNOWN\Components\7ABFE44842C12B390 ...

  4. 更改计算机名称后 导致 sql server 2008 R2 用windows账户不能附加的错误解决办法

    出错背景:本人想用sql server 2008 R2 附加sql server 2005数据库出现拒绝访问,后查询网站得知,要用windows身份验证方式登录进去附加, 然后我就用windows身份 ...

  5. 安装SQL Server 2008 R2 Enterprise错误:'' is not a valid login or you do not have permission

    今天安装SQL Server时遇到一个恶心的Bug. ------------------------------------------------------------------------- ...

  6. sql server 2008 R2无法连接127.0.0.1报错 Server error:40(错误:53)

    在公司用sql server 2008 R2很好的,回家连接127.0.0.1就报错.sql server2008R2主机名和.都可以登录,连接127.0.0.1出错,在与 SQL Server 建立 ...

  7. Microsoft SQL Server 2008 R2 安装卸载

    问题 问题1 标题: Microsoft SQL Server 2008 R2 安装程序 ------------------------------ 出现以下错误: Could not open k ...

  8. SQL Server 2000向SQL Server 2008 R2推送数据

    [文章摘要]最近做的一个项目要获取存在于其他服务器的一些数据,为了安全起见,采用由其他“服务器”向我们服务器推送的方式实现.我们服务器使用的是SQL Server 2008 R2,其他“服务器”使用的 ...

  9. SQL Server 2008 R2 升级到 Service Pack 3后Report Builder启动不了

    一同事将测试服务器从SQL Server 2008 R2 SP2升级到了SQL Server 2008 R2 SP3后发现Report Service的报表编辑时启动不了Report Builder, ...

随机推荐

  1. POI中getLastRowNum() 和getLastCellNum()的区别 hssfSheet.getLastRowNum();//最后一行行标,比行数小1 hssfSheet.getRow(k).getLastCellNum();//获取列数,比最后一列列标大1

    hssfSheet.getLastRowNum();//最后一行行标,比行数小1 hssfSheet.getRow(k).getLastCellNum();//获取列数,比最后一列列标大1

  2. ExtJs特点、优缺点及注意事项

    摘自:ExtJs特点.优缺点及注意事项 1.什么是ExtJs?ExtJS可以用来开发RIA也即富客户端的AJAX应用,是一个用javascript写的,主要用于创建前端用户界面,是一个与后台技术无关的 ...

  3. SpreadJS 中应用 KnockoutJS 技术

    SpreadJS 支持 Knockout (KO)技术, KnockoutJS 是一个使用 MVVM 模式的 JavaScript 库,允许双向数据绑定,使数据和UI界面进行实时的交互更新.关于KO的 ...

  4. AC自动机基础知识讲解

    AC自动机 转载自:小白 还可参考:飘过的小牛 1.KMP算法: a. 传统字符串的匹配和KMP: 对于字符串S = ”abcabcabdabba”,T = ”abcabd”,如果用T去匹配S下划线部 ...

  5. Visual Studio 2013 Preview 新功能

    先来看一下Visual Studio的版本历史: 1. Visual Studio.NET 2002 2. Visual Studio.NET 2003 3. Visual Studio.NET 20 ...

  6. 深入浅出java 8 lambda表达式--零基础一分钟入门

    lambda从使用上来说,第一感觉直白的理解就是,少了很多不必要的匿名回调类的写法,比如: public static void main(String[] args) { PlatformQuery ...

  7. Java编程思想读书笔记之内部类

    现在是够懒得了,放假的时候就想把这篇笔记写出来,一直拖到现在,最近在读<Java编程思想>,我想会做不止这一篇笔记,因为之前面试的时候总会问道一些内部类的问题,那这本书的笔记就从内部类开始 ...

  8. 帝吧出征FB:这李毅吧的“爆吧”文化是如何形成的

    声明:本文不对爆吧行为及其涉及的事件进行是非判断,只探讨帝吧文化本身,欢迎拍砖.更正和补充. 一.“帝吧FB出征”事件梳理 继上次全网集体骂 “薯片”事件后,昨日(1月20日)晚7点,又发生了一次互联 ...

  9. 使用Apache ab进行压力测试(参数说明)

    我们一般会使用Apache自带的ab来对项目进行压力测试,看项目的执行情况如何. 我们可以使用 ab -v 来查看ab的详细参数使用方法. [root@node234 bin]# ./ab -v ab ...

  10. Tomcat一些小事

    1.编码问题 1.1.乱码 客户端发请GET请求,如果这个请求地址上有中文,而且也没有进行encode的时候,后端就可能接收到乱码. --解决办法 在tomcat , conf/server.xml ...