部分实用的SQL语句
一、在数据库创建表格的SQL语句
1,创建一个link表格,包含属性:lid 主键,title 标题, imgpath 图片地址 , url 网址 , info 说明, isshow 显示1, 不显示0 , sort 顺序
CREATE TABLE link ( //创建 link 表格
lid INT AUTO_INCREMENT PRIMARY KEY, //设置为主键
title VARCHAR(100), //varchar类型,最大可存100字符
imgpath VARCHAR(50),
url VARCHAR(50),
info VARCHAR(200),
isshow INT, //int类型,无限制
sort INT //注意,最后一个不用加逗号
)
CREATE TABLE role(
uid INT AUTO_INCREMENT PRIMARY KEY,
uname VARCHAR(30),
upwd VARCHAR(30),
state INT
);
CREATE TABLE role(
rid INT AUTO_INCREMENT PRIMARY KEY,
rname VARCHAR(30),
sort INT
);
2,使用外键创建用户角色表 users_role
CREATE TABLE users_role(
uid INT REFERENCES users(uid), //uid 用户外键(使用了users表中的uid属性)
rid INT REFERENCES role(rid) //rid 角色外键(使用了role表中的rid属性)
)
3,创建一个视图vUsersAndRole(根据users表和role表)[视图是一个虚拟的表格,实际不存在这个表格,只是将相关表格的数据通过视图显示出来了]
CREATE VIEW vUsersAndRole
AS
SELECT users.*,role.rid,role.rname,role.sort //选择了users的所有属性,以及role中的rid,rname,sort
FROM users,role, users_role //从三个表中获取数据
WHERE users.uid = users_role.uid //将中间表的 uid赋给users.uid达到关联并避免重复
AND role.rid = users_role.rid
二、在方法中执行的SQL语句
1,向表格 link 添加数据,null表示主键,并且这个主键是自动增长的,“?”表示可传入的参数,数量根据表格自定义,一般用于手动输入参数
String sql = "INSERT INTO link VALUES(NULL,?,?,?,?,?,?)";
2,删除表格中的某一行数据,“ "+lid+" ” 表示 从某出获取的参数,用来定位要删除的数据,一般用于选择动作获取到的参数
String sql = "DELETE FROM link WHERE lid IN ("+lid+")";
3,修改表中的数据,选择后使用 set 重新设置对应的参数
String sql = "UPDATE link SET titel=?,imgpath=?,url=?,info=?,isshow=?,sort=? WHERE lid=?";
4,选择表格,并依据 参数 sort 来排序
String sql = "SELECT * FROM link order by sort ";
5,查找表格,根据参数 lid,一般用于查看表中的数据
String sql = "SELECT * FROM link where lid=?";
6,选择表格中限定的参数
String sql = "SELECT * FROM link order by sort limit "+(pageNo-1)*pageSize+","+pageSize+" ";
7,返回表格中的数量
String sql = "SELECT count(*) FROM link ";
8,这里是查询视图 vroleAndGrante 的格式,依据选中的rid,注意格式!!!
String sql = "select * from vroleAndGrante where rid="+rid;
9,通过主键查询视图Vusers_role_grante中的一条信息,这里的主键是 gname
String sql = "SELECT gname FROM Vusers_role_grante WHERE uid=? GROUP BY gname";
部分实用的SQL语句的更多相关文章
- 实用的SQL语句
行列互转 ) select * from test2 --列转行 select id,name,quarter,profile from test2 unpivot ( profile for qua ...
- SqlServer下一些实用的sql语句收集
清理数据库日志 USE [master] ALTER DATABASE [表名] SET RECOVERY SIMPLE WITH NO_WAIT ALTER DATABASE [表名] SET RE ...
- 实用SQL语句大全
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- 程序员实用的 MySQL sql 语句
这儿只讲究实用, 程序员编程时常用到的 MySQL的 sql语句(不包括基本的 select, update, delete 等语句). 1. 添加一个用户build,并赋予所有权限的命令 gran ...
- .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中
目录 .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中 前言 笔者最近在开发和维护一个.NET Core项目,其中使用几个非常有意思的.NET Core相关的扩展,在 ...
- MySQL中特别实用的几种SQL语句送给大家
在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑.减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一亮. 目录 实用的SQL 1.插 ...
- T-SQL实用查询之常用SQL语句
删除数据库所有的表: declare @sql varchar() begin SELECT @sql='drop table ' + name FROM sysobjects WHERE (type ...
- SQL SERVER 数据库实用SQL语句
--查看指定表的外键约束 select * from sysobjects where parent_obj in( select id from sysobjects where name='表名' ...
- 简单实用 “易忘” 的SQL 语句语法,新老皆宜
--创建数据库 create database 数据库名 on primary ( name='数据库名_data', filename='数据库储存路径', size=数据库初始大小(MB), ...
随机推荐
- HighCharts基本用法
var options={ chart: {type: 'column',renderTo: 'ChartDesigner1'},//type :图表类型(柱状图,饼状图),renderTo :指向页 ...
- display:inline、block、inline-block的区别(转)
display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度缺省是它的容器的100%,除非设定一个宽度 <div& ...
- 2015-09-22CSS:border、background、表格、超链接、overflow、firebug
1.CSS的border属性 ⑴定义和用法 border 简写属性在一个声明设置所有的边框属性. 可以按顺序设置如下属性: border-width border-style border-color ...
- eclipse[日文版] 的SVN 上传步骤
可能有些朋友在日企上班,肯定要用到SVN,可是一般就下载和更新,没有用到上传 这里来介绍下上传 1.项目右键 2.点击Share Project 3.点击SVN下一步 4.选择你的上传的服务器地址 5 ...
- log4net 生成多个空文件问题
使用 log4net 的伙伴,相信很多人会遇到我现在这个问题 ,一般项目需求,便于管理和查找原因,会让项目的日志文件分类记录,然而会出现很多空日志, 出现这个问题的原因通常是我们web.config配 ...
- css控制文字长度,超出长度显示...
css控制文字长度,超出长度显示... .style { max-width: 165px; overflow: hidden; white-space: nowrap; text-overflow: ...
- iOS中的设计模式
一. MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离 ...
- c#读取通达信历史数据的方法
public Bar ReadBarMin(BinaryReader br, int instrumentId, long size) { int date = br.ReadUInt16(); in ...
- Java基础--说集合框架
版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...
- c#结构体和字节数组的转换、字节数组和stream的转换
本文由博主(YinaPan)原创,转载请注明出处:http://www.cnblogs.com/YinaPan/p/streambytsstruct.html using System; using ...