数据库管理员,英文是Database Administrator,简称DBA。主要分享数据维护及数据挖掘相关技术!
Pages: 1/12 First page 1 2 3 4 5 6 7 8 9 10 11 12 Next page Final page [ View by Articles | List ]
Jan 19
合并后字段顺序没有按照排序来怎么搞,,如下


这样即可,其中SEPARATOR '&'是为了替换合并后的逗号,,不替换可以去掉
Feb 16
1. 类型声明
set 不需要声明类型,declare必须指定类型

2. 位置
set 位置可以任意, declare 必须在复合语句的开头,在任何其它语句之前

3.作用范围
DECLARE 定义的变量的作用范围是BEGIN … END块内,只能在块中使用。
SET 定义的变量用户变量,作用范围是会话/全局
    如SET @var=12的定义,则var的作用域为整个会话,为会话变量.
    如SET global var=12的定义,则var的作用域为全局,为全局变量.
Sep 22
查询列表中数据丢失,每页10条
以下query全部数据正常
SELECT * FROM TABLE ORDER BY CREATETIME DESC

以下分配查询数据丢失
SELECT * FROM TABLE ORDER BY CREATETIME DESC LIMIT 0,10;
SELECT * FROM TABLE ORDER BY CREATETIME DESC LIMIT 10,10;

怀疑是CREATETIME相同导致分页问题
查看数据库果然发现有3条数据CREATETIME相同

解决:
CREATETIME 类型到毫秒
或者
CREATETIME update时间为不同
或者
增加主键参与排序
ORDER BY CREATETIME,id DESC
Jul 1
举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等

现在有篇文章他既是 头条,又是热点,还是图文,

type中以 1,3,4的格式存储.

们我们如何用sql查找所有type中有4图文标准的文章呢??


这就要我们的find_in_set出马的时候到了.

以下为引用的内容:

select * from article where FIND_IN_SET('4',type)

----------------------------------------------------------
mysql手册中find_in_set函数的语法:

FIND_IN_SET(str,strlist)

假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。
一个字符串列表就是一个由一些被‘,’符号分开的子链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。
如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。

mysql> SELECT FIND_IN_SET('b','a,b,c,d');

-> 2 因为b 在strlist集合中放在2的位置 从1开始
--------------------------------------------------------
select FIND_IN_SET('1','1'); 返回 就是1 这时候的strlist集合有点特殊 只有一个字符串 其实就是要求前一个字符串 一定要在后一个字符串集合中 才返回 大于0的数

select FIND_IN_SET('2','1,2');返回2
select FIND_IN_SET('6','1'); 返回0
----------------------------------------------------------

注意:
select * from treenodes where FIND_IN_SET(id,'1,2,3,4,5');
使用find_in_set函数一次返回多条记录

id 是一个表的字段 然后每条记录分别是id等于1,2,3,4,5的时候
有点类似in (集合)
select * from treenodes where id in (1,2,3,4,5);
Jun 15
May 14
1. 新增用户


2. 修改用户密码


3. 删除用户


4. 权限分配
    4.1. grant用法
           grant 权限 on 数据库.* to 用户名@'登录主机' identified by '密码'


4.2 例子


4.3 注意事项
grant 会覆盖用户的部分信息,跟insert 、update执行功能一样.
Mar 31
怎么样使用yum来安装mysql
linux下使用yum安装mysql,以及启动、登录和远程访问。
1、安装
查看有没有安装过:
          yum list installed mysql*
          rpm -qa | grep mysql*

查看有没有安装包:
          yum list mysql*

安装mysql客户端:
          yum install mysql

安装mysql 服务器端:
          yum install mysql-server

          yum install mysql-devel


2、启动&&停止

数据库字符集设置
          mysql配置文件/etc/my.cnf中加入default-character-set=utf8

启动mysql服务:
          service mysqld start或者/etc/init.d/mysqld start
开机启动:
          chkconfig -add mysqld,查看开机启动设置是否成功chkconfig --list | grep mysql*

          mysqld             0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭
停止:

          service mysqld stop


3、登录
创建root管理员:
          mysqladmin -u root password 123456

登录:
          mysql -u root -p输入密码即可。
忘记密码:
          service mysqld stop

          mysqld_safe --user=root --skip-grant-tables

          mysql -u root

          use mysql

          update user set password=password("new_pass") where user="root";

          flush privileges;  

Mar 11

 在SQL Server中引用dll分为两个步骤

1.创建一个dll文件(dll文件分成3种类型,详细讲其中两种)

2.把dll文件放进SQL Server的程序集中。然后定义一个Function,就可以通过该Function来引用dll中的函数。

 

创建一个dll文件

  1.点击“文件”->“新建”->“项目”->类库,把命名空间改成StringHelp,添加如下代码

框架必须改为.NET3.5及3.5以下,因为SQL Server 2008只是支持.NET 3.5及一下,.NET 4.0是2010年发布的,不支持也很正常)

复制代码
namespace StringHelp              //命名空间{     public  class ClassConvert      //类名    {    //把输入的字符串中的小写字母变成大写字母        public static string  ToUpper(string vInputString)  //函数必须为静态函数,应为静态函数不用实例化类就可以调用        {             return vInputString.ToUpper();           }     } }
复制代码

 

Pages: 1/12 First page 1 2 3 4 5 6 7 8 9 10 11 12 Next page Final page [ View by Articles | List ]