社区
Web 开发
帖子详情
用户在注册的时候有些非必填数据是如何存入数据库中的?
葱花鸡蛋
2017-01-03 03:22:58
用户在注册的时候一般会有好多信息需要填写,但有些是不必要的。这些不必要的信息怎么处理?
1. 是默认为空用户写了就插入用户输入的值,用户没写就插入默认的空值。
我感觉这种方法很浪费
2. 用一些其他方法,我并不知道这些方法,有大神知道怎么处理吗?
...全文
376
8
打赏
收藏
用户在注册的时候有些非必填数据是如何存入数据库中的?
用户在注册的时候一般会有好多信息需要填写,但有些是不必要的。这些不必要的信息怎么处理? 1. 是默认为空用户写了就插入用户输入的值,用户没写就插入默认的空值。 我感觉这种方法很浪费 2. 用一些其他方法,我并不知道这些方法,有大神知道怎么处理吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
葱花鸡蛋
2017-01-04
打赏
举报
回复
看了大家的意见,得到了很多方法,谢谢大家
liufurun
2017-01-04
打赏
举报
回复
这个没有必要吧~~如果所有字段都是在一张表里,那么无论如何都要做一次insert操作~~~感觉这个开销大部分是在创建链接上,多几个null字段应该影响不大吧~~~当然在内存中动态拼接sql也是可行的~~~
gzcitizeny
2017-01-04
打赏
举报
回复
用户没填写的就传回一个空值就行了,反正都要对数据库进行一次写入操作。 否则还有检查哪个字段没有填写,根据这个修改sql语句更加麻烦。
caorongqiang
2017-01-04
打赏
举报
回复
在输入的时候,检查可选值是不是存在,如果不存在,就不用管; 如果存在了,检查格式是否满足限制条件;然后,动态生成SQL预处理语句,接参数的类型和位置依次添加用户输入的各项参数。对于所有不存在的可选项,填写数据库定义时的默认值,比如NULL。
kinoymir
2017-01-04
打赏
举报
回复
插入数据库的时候用动态SQL啊
cp3_nit
2017-01-03
打赏
举报
回复
这个感觉有点想太多吧...别人不填就传空进去好了。
葱花鸡蛋
2017-01-03
打赏
举报
回复
如果先进行判断,那插入数据库的参数的个数就不确定,有人知道怎么样向数据库(mysql)插入不定参数个数的数据?
xiaoyi94
2017-01-03
打赏
举报
回复
一般会进行判断,非空的属性才会插入,也会有不进行判断,直接插入空值的
数据
库
应用系统设计与实现
数据
库
应用系统设计与实现 实验类型:设计型 实验地点:2楼312 实验时间:12月14日、21日周五1-3/5-7节 实验内容: 系统概述: 某银行需要开发ATM存取款机系统实现如下功能: 1)开户(到银行填写开户申请单,卡号自动生成) 2)取款 3)存款 4)查询余额 题目要求: 一、建库、建表、建约束 1、使用SQL创建表 客户信息表userinfo 字段名称 说明 备注 customerID 顾客编号 自动编号(标识列),从1开始,主键 用序列sequence实现,用其属性:nextval customerName 开户名
必填
PID 身份证号
必填
,智能是18位或15位,唯一约束 check约束length()函数 telephone 联系电话
必填
,11位手机号 check约束,’[0-9]’ address 居住地址 银行卡信息表cardinfo 字段名称 说明 cardID 卡号
必填
,主键,银行的卡号规则和电话好吗一样,一般前8位代表特殊含义,如某综合某支行等,假定该行要求其营业厅的卡号格式为10103576**** ***开始,每4位号码后有空格,卡号一般是随机产生。 curType 货币种类
必填
,默认为RMB savingTate 存款类型 活期/定活两便/定期 openDate 开户日期
必填
,默认为系统当前日期 openMoney 开户金额
必填
,不低于1元 balance 余额
必填
,不低于1元,否则将销户 pass 密码
必填
,6位数字,开户时默认为6个“6” IsReportloss 是否挂失
必填
,是/否值,默认为“否” customerID 顾客编号 外键,
必填
,表示该卡对应的顾客编号,一位顾客允许办理多张卡号 交易信息表transinfo 字段名称 说明 transDate 交易日期
必填
,默认为系统当前日期 cardID 卡号
必填
,外键 transType 交易类型
必填
,只能是
存入
/支取 transMoney 交易金额
必填
,大于0 remark 备注 可选,其他说明 2、使用SQL语言在每个表上添加约束 主键约束、外键约束、CHECK约束、默认约束、
非
空约束 二、插入测试
数据
使用SQL语言向每个表
中
插入至少3条记录 三、模拟常规业务 1)修改客户密码 2)办理银行卡挂失 3)统计银行资金流通余额和盈利结算 银行资金流通余额=总
存入
金额-总支取金额 盈利结算=总支取金额 * 0.008 – 总
存入
金额 * 0.003 4)查询本周开户的卡号,显示该卡相关信息 5)查询本月交易金额最高的卡号 6)查询挂失账号的客户信息 四、利用视图实现
数据
查询 1)为客户提供以下3个视图供其查询该客户
数据
客户基本信息:vw_userInfo 银行卡信息:vw_cardInfo 银行卡交易信息:vw_transInfo 2)提供友好界面,要求各列名称为
中
文描述 3)调用创建的视图获得查询结果 五、用存储过程实现业务处理 1)完成开户业务 2)完成取款或存款业务 3)根据卡号打印对账单 4)查询、统计指定时间段内没有发生交易的账户信息
ASP.NET报名系统(源代码+论文)、
开发本系统的目的在于:根据培训机构的特点,培训管理工作是培训机构
中
非
常重要的一部分,有效地管理学生报名信息,提高培训机构培训管理工作的效率,使管理人员从繁重而复杂的管理工作
中
摆脱出来,从而节省工作人员的人力和时间,利用计算机加工后的信息进行决策。系统要求能实现学生报名、调班、延班、插班、退费、报表统计及打印听课证、基本设定、开证明和修改学生报名信息的功能。 1.报名 将学生信息录入培训管理系统, 系统自动检查“
必填
项”,如有未填项,则提示工作人员将
数据
补充完整并检查有没有重复录入的现象,询问是否打印听课证,若有课程在早于一个月前已经开课,系统自动从班次
中
滤去,不再显示。 2.调班 能根据输入的学生原始信息,如姓名、报名日期及班次,找出学生纪录(要做到输入一项或多项均可进行查询,其
中
姓名项允许模糊查询)并打印听课证,
数据
库
备注文件
中
加入一项调班信息(某年某月某日从某校区某班转至某校区某班),如果多次调班,应有多条调班纪录并在原来所报班级名册删除学生名字,在调班班级名册添加学生名字。 3.延班 (1) 办延班 同上找出学生信息后,输入剩余学费,将信息
存入
延班库,在原来所报班级名册删除学生名
Nginx安装包
Nginx的反向代理 http://www.cnblogs.com/zhrxidian/p/5491285.html tomcat+nginx+redis实现均衡负载、session共享(二) 今天我们接着说上次还没完成session共享的部分,还没看过上一篇的朋友可以先看下上次内容,http://www.cnblogs.com/zhrxidian/p/5432886.html。 1.redis简介及下载安装 作为这次的主角,相信大家对redis应该都一定印象,redis是一款开源的高性能key-value
数据
库
,拥有丰富的键值储存类型,并提供多种语言的API。 与一般
数据
库
不同,redis是使用内存作为主存,而使用硬盘来实现
数据
持久化,而且redis是周期性的将
数据
写到硬盘上。这就意味着一旦我们服务器出现断电、重启之类的情况,我们很可能会出现
数据
丢失的情况,所以不建议使用redis来存放关键的
数据
。当然,也正因为redis读写
数据
都使用内存,所以它的速度是
非
常快的,很适合我们来存放一些临时性的
数据
。 此外,redis能实现的作用很多,诸如队列、缓存之类的,但我也还没使用过,无法在这里为大家说明,但不影响我们今天的session共享功能。 首先我们先下载redis,这是windows版本的下载地址 https://github.com/ServiceStack/redis-windows。 可以点击右边下载全部文件,但感觉没必要,而且下载速度偏慢,建议进入downloads里面下载我们所需的redis包即可。 redis在windows下是免安装的,下载完成后,解压,将文件夹复制到自己某个盘
中
就好了。解压后是这个样子的。 一开始redis是默认不需要密码,如果想要设置密码,可以进入redis.windows.conf文件下找到requirepass,删除前面的#号,在其后面便可以设置密码,我这里设成了123456。 下面我们打开redis。首先打开cmd,进入我们redis目录下,输入redis-server.exe redis.windows.conf。出现下面界面,则打开成功。(不可偷懒想双击redis-server.exe完事,这样虽然也能打开,但不会加载配置文件)。 另外和别的
数据
库
一样,我们需要安装一个辅助的可视化工具Redis Desktop Manager,这是下载地址:http://redisdesktop.com/download。 我们下载windows版本,安装完成后,还没有任何连接对象,那就让我们给它添加一个。点击下方的connect to redis server,出现个弹出框。然后Name我们可以随便输,Host添我们redis服务器的ip地址,本地可以直接填写localhost,端口默认为6379,Auth就是密码,不是
必填
项,如果没设置密码可不填,点击OK,建立完成。 至此,我们的准备工作都已经完成,下面开始我们的spring与redis的整合之旅。 2.Spring与Redis的整合之旅 这是上篇文章结束时我的项目目录。 其实Spring本身就有提供对redis的支持,就是spring-session,我们只需将这个在pom.xml添加如下代码,maven便会自己下载所需的jar包及依赖包。 1 <dependency>2 <groupId>org.springframework.session</groupId>3 <artifactId>spring-session-data-redis</artifactId>4 <version>1.1.1.RELEASE</version>5 <type>pom</type>6 </dependency> 随后我们在resources文件夹
中
新建一个redis.properties,往里面添加如下内容。 再新建一个spring-redis.xml,往里面添加我们redis相关的配置。其
中
maxInactiveIntervalInSeconds是设置session有效时间,以秒为单位,但实际上无论怎么设,session真实有效时间还是会比我们设置的稍微长一些。 1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http:/
sql语句技巧--插入时间时
非
必填
的情况
应用场景当表单
中
存在时间且为
非
必填
时,且该字段在
数据
库
中
为时间类型(一般可更改为字符串类型的)错误分析sql插入或更新语句时,时间字段不能为空(如 time = ”,是错误的,应该是time = null) 那么如果有值的情况呢 (time = ‘2016-06-30 12:00:00’ 是对的,而 time = 2016-06-30 12:00:00 是错误的。解决方案1.当时间值 当作变量传
mysql
非
必现
数据
插不进去_MySQL必知必会:
数据
插入(Insert)
本篇文章介绍如何使用Insert语句将
数据
插入到
数据
库
。
数据
插入增删改查是
数据
库
最常用的4个命令,插入算是第二常用,第一是SELECT。插入
数据
的方式大概有4种插入完整的行插入行的一部分插入多行
数据
(批量插入)插入来自查询的
数据
插入完整的行使用Insert将一条
数据
插入
数据
库
是最简单也是最基本的操作。插入操作有两种写法。顺序插入顺序插入指的是:给出
数据
库
名和需要插入
数据
,按照
数据
库
字段排列顺序将数...
Web 开发
81,092
社区成员
341,716
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章