‘壹’ 在sqlserver中实现树形结构中根、子节点数据的添加、修改
这个很好实现!就是添加和修改操作:
增加节点:首先要获取(在修改页面)或指定(在sql语句中)parentid的值,然后插入数据就可以啊!
修改节点:可以根据menuid,修改节点的menuName或者parentid或者是同时修改它们俩。
有问题请留言!
‘贰’ MYSQLcluster集群,在sql节点写入,是如何把数据存储到数据节点的
MYSQLcluster集群,在sql节点写入,是如何把数据存储到数据节点的?
数据节点实际就是单个的数据库实例而已,所以数据存储和一般实例没有太多区别,如果你的意思是怎么保证数据的存储一致性,那这个话就多了,不过,其实当做master-slave的高级模式来理解就好了,只是没有使用binlog的动态转换分发而已
‘叁’ sql 知道父节点,查询所有的子节点,运用游标,递归,存储过程
呃,因为我不清楚你的表里,这个BPROD
char(15)
老爸
里面记录的值是不是和BMWHS
对应的,所以只能说个大概。
select
sys_connect_by_path(username,'>')
"Path"
from
tmbm
start
with
id=1
connect
by
prior
id=parentid;
其中,id是你要遍历的起始点,比如你想从
厂号=XX
的这个父节点开始寻找他所有的子节点,这里就换成
start
with
BMWHS=XX
然后,connect
by
prior
id=parentid,这里id=parentid,简单解释就是寻找其他记录里,parentid和我的id相同的记录,也就是找子节点。
应该是换成你的BMWHS=BPROD(我不知道你的BPROD
BCHLD
和哪个属性是对应的,是BMWHS吗?)
如果是的话就是下面这样(username是你要返回的值,假设你还是要返回
BSEQ
序号)
select
sys_connect_by_path(BSEQ,'>')
"Path"
from
tmbm
start
with
BMWHS=XX
connect
by
prior
BMWHS=BPROD;
‘肆’ 安装sql server2012节点怎么用
下载示例数据库,网站提供了很多的文件下载,一般的学习使用,下载默认的第一个文件就可以了,有更深入的学习要求,再考虑其他的文件下载吧。下载的是一个mdf文件,也就是sqlserver的数据文件。
将下载好的文件附加到sqlserver2012中。启动管理器,在“数据库”节点右键鼠标,在菜单中点击“附加”菜单。
在弹出的窗口中,点击“添加”按钮。
选择需要附加的数据库文件,也就是下载的AdventureWorks2012_Data.mdf文件。
选择确定文件后,由于没有日志文件,所以会有相应的提示,可将日志文件删除。点击“确定”按钮即可。
确定后,可以看到数据库已经添加到管理器中了,可以进行实际的数据操作学习了。
‘伍’ SQL取xml中节点值,该怎么解决
1、用 childNodes 属性,按顺序取 实现过程:首先创建一个 xml 对象,然后载入 xml 文件,再根据待取节点父节点在 xml 文件中的序号和本身的序号,确定待取节点的位置,最后返回待取节点的值。 //pId 待取节点父节点序号 //cId 待取节点序号 fun...
‘陆’ windows操作系统下,启动sql节点的命令是什么
sqlservr 应用程序
sqlservr 应用程序可以从命令提示符下启动、停止、暂停和继续 Microsoft?? SQL Server?? 2000 的实例。
语法sqlservr [-sinstance_name] [-c] [-dmaster_path] [-f]
[-eerror_log_path] [-lmaster_log_path] [-m]
[-n] [-Ttrace#] [-v] [-x] [-g number] [-O] [-y number]
参数-sinstance_name
指定要连接到的 SQL Server 实例。如果未指定命名实例,sqlservr 将启动 SQL Server 默认实例。
重要 启动 SQL Server 实例时,必须从实例所在的适当目录使用 sqlservr 应用程序。对于默认实例,从 \MSSQL\Binn 目录运行 sqlservr。对于命名实例,在 \MSSQL$instance_name\Binn 目录运行 sqlservr。-c表示以独立于 Windows NT 服务控制管理器的方式启动 SQL Server 实例。当从命令提示符下启动 SQL Server 时,可使用该选项缩短启动 SQL Server 的时间。(注意:当使用该选项时,无法通过使用 SQL Server 服务管理器或 net stop 命令停止 SQL Server,而且如果已从 Microsoft Windows NT?? 系统注销,则 SQL Server 将停止运行。)
-dmaster_path
指出 master 数据库文件的完全合法路径。在 -d 和 master_path 之间没有空格。-f以最小配置模式启动服务器。然后,系统管理员可对配置选项重新配置(使用 sp_configure 系统存储过程)。
-eerror_log_path
表示错误日志文件的完全合法路径。如果未指定路径,则默认实例的默认位置是 x:\Program Files\Microsoft SQL Server\MSSQL\Log\Errorlog,命名实例的默认位置是 x:\Program Files\Microsoft SQL Server\MSSQL$instance_name\Log\Errorlog。在 -e 和 error_log_path 之间没有空格。
-lmaster_log_path
指示 master 数据库事务日志文件的完全合法路径。在 -l 和 master_log_path 之间没有空格。-m表示在单用户模式下启动 SQL Server 实例。如果 SQL Server 是以单用户模式启动的,则只能连接一个用户。CHECKPOINT 机制(它确保完成的事务定期从磁盘高速缓存写入数据库设备中)将不启动。(一般情况下,如果您遇到需要修复的系统数据库问题时,可使用此选项。)-n表示您不想使用 Windows NT 应用程序日志来记录 SQL Server 事件。如果用 -n 选项启动 SQL Server 实例,则最好也使用 -e 选项,否则将不会记录 SQL Server 事件。
-Ttrace#表示应使用指定的有效跟踪标记 (trace#) 来启动 SQL Server 实例。跟踪标志用来启动具有非标准行为的服务器。有关可用跟踪标记 (trace#) 的更多信息,请参见跟踪标记。
重要 当指定跟踪标志时,请使用 –T 来传递跟踪标志号。SQL Server 接受小写字母 t (-t);然而,-t 还设置 SQL Server 支持工程师所需的其它内部跟踪标记。-v显示服务器的版本号。x禁用维护 CPU 统计。
-g memory_to_reserve
指定内存的兆字节整数,该内存被保留下来用于 SQL Server 2000 内部(进程内)运行的其它应用程序。-O指定不需要分布式 COM (DCOM),从而禁用异类查询。
‘柒’ 通过SQL怎样创建无限级节点导航菜单 和读取无限级节点导航菜单
依照需求的不同设计方案也不一样,一般的话在程序中用递归算法处理,数据库设计上至少标记ID和ParentID就可以了。
这里有一段小算法 你可以看看:
public void BindTree(DataTable dt, TreeNode tn)
{
DataView dv = new DataView(dt);
if(tn == null)
{
dv.RowFilter = "parentid='0'";
foreach(DataRowView drv in dv)
{
TreeNode node = new TreeNode(drv["CateName"].ToString(), drv["parentid"].ToString());
BindTree(dt, node);
this.TreeView1.Nodes.Add(node);
}
}
else
{
dv.RowFilter = "parentid='"+tn.Value+"'";
foreach(DataRowView drv in dv)
{
TreeNode node = new TreeNode(drv["CateName"].ToString(), drv["parentid"].ToString());
BindTree(dt, node);
tn.ChildNodes.Add(node);
}
}
}
‘捌’ SQL通过父节点获取所有子节点
这个很简单啊
表结构一般如下tablename(表名)
id--节点ID, name-- 节点名称 parentid父节点ID,
-----获取节点号为6下的所有子节点
select * from tablename t start with id =6 connect by prior id=parentid
‘玖’ MYSQL的CLUSTER的SQL节点配置需要注意什么
管理节点:
[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# ls
config.ini data ndb_mgm ndb_mgmd
[root@localhost mysql]# cat config.ini
[NDBD DEFAULT]
NoOfReplicas=1
[TCP DEFAULT]
portnumber=3306
[NDB_MGMD]
hostname=192.168.0.231
datadir=/usr/local/mysql/data
[NDBD]
hostname=192.168.0.233
datadir=/usr/local/mysql/data
[NDBD]
hostname=192.168.0.234
datadir=/usr/local/mysql/data
[MYSQLD]
hostname=192.168.0.232
[root@localhost mysql]#
[root@localhost mysql]# /usr/local/mysql/ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @192.168.0.233 (Version: 5.0.24, starting, Nodegroup: 0)
id=3 @192.168.0.234 (Version: 5.0.24, starting, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 (Version: 5.0.24)
[mysqld(API)] 1 node(s)
id=4 (not connected, accepting connect from 192.168.0.232)
ndb_mgm>
SQL 节点:
[root@localhost ~]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/
user=nobody
port=3306
socket=/tmp/mysql.sock
ndbcluster
ndb-connectstring=192.168.0.231
[mysql_cluster]
ndb-connectstring=192.168.0.231
[root@localhost ~]# ps aux | grep mysql
root 2865 0.0 0.1 5312 1104 tty1 S 19:13 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe
nobody 2910 0.0 1.8 122356 18384 tty1 Sl 19:13 0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=nobody --pid-file=/usr/local/mysql/data//localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.sock
root 3167 0.0 0.0 4752 664 pts/0 S+ 21:20 0:00 grep mysql
DATA 节点:(两个配置一样的。另外一个是192.168.234)
[root@localhost ~]# cat /etc/my.cnf
[mysqld]
ndbcluster
ndb-connectstring=192.168.0.231
[mysql_cluster]
ndb-connectstring=192.168.0.231
[root@localhost ~]# ps aux | grep ndb
root 2953 0.0 0.2 6672 1956 ? Ss 11:09 0:00 /usr/local/mysql/bin/ndbd --initial
root 2954 0.0 10.0 491720 97412 ? Sl 11:09 0:00 /usr/local/mysql/bin/ndbd --initial
root 3229 0.0 0.0 4752 664 pts/0 S+ 13:19 0:00 grep ndb
[root@localhost ~]#