2013-04-20工作


SELECT SO.NAME AS "Table Name", SC.NAME AS "Column Name",SM.TEXT AS "Default Value"  
FROM dbo.sysobjects so
INNER JOIN dbo.syscolumns sc ON so.id = sc.id 
LEFT JOIN dbo.syscomments sm ON SC.cdefault = sm.id  
WHERE SO.xtype = 'U'  and ( sm.text is not null)
ORDER BY so.[name], sc.colid
--带默认约束
SELECT ST.[name] AS "Table Name",
SC.[name] AS "Column Name",
SD.definition AS "Default Value",
SD.[name] AS "Constraint Name" 
 FROM sys.tables ST INNER
JOIN sys.syscolumns SC ON ST.[object_id] = SC.[id]  
INNER JOIN sys.default_constraints SD ON ST.[object_id]
= SD.[parent_object_id] AND SC.colid = SD.parent_column_id  
ORDER BY ST.[name], SC.colid


--带主键(key值的包括UNIQUE)
select * from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE

SELECT CONSTRAINT_NAME, TABLE_NAME,COLUMN_NAME=STUFF((SELECT ','+[COLUMN_NAME] FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE t WHERE CONSTRAINT_NAME=t1.CONSTRAINT_NAME FOR XML PATH('')), 1, 1, '')
FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE t1
GROUP BY CONSTRAINT_NAME, TABLE_NAME

 

 


--无默认约束--无主键(有索引)
select st.object_id,sc.column_id, st.name,sdc.name,sc.name ,ccu.COLUMN_NAME
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc  on sc.object_id  = sdc.parent_object_id
and sc.column_id =  sdc.parent_column_id
left outer join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu on
sc.object_id = OBJECT_ID(ccu.TABLE_NAME) and
sc.name = ccu.COLUMN_NAME
where  sc.user_type_id = 175
and sc.max_length >1 and sdc.name is  null and ccu.COLUMN_NAME is null
order by sdc.name


--无默认约束--无主键(无索引)
select 'ALTER TABLE ', st.name, ' ALTER COLUMN ' +   sc.name +  ' varchar(',sc.max_length,')    ' +
case sc.is_nullable when 0 then 'not null' else '' end
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc  on sc.object_id  = sdc.parent_object_id
and sc.column_id =  sdc.parent_column_id
left outer join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu on
sc.object_id = OBJECT_ID(ccu.TABLE_NAME) and
sc.name = ccu.COLUMN_NAME
left outer join (SELECT a.object_id,a.column_id, c.name,c.is_primary_key
       FROM sys.columns a inner join sys.index_columns b
    ON a.object_id = b.object_id AND a.column_id = b.column_id inner join sys.indexes c
    ON b.object_id = c.object_id AND b.index_id = c.index_id) SI
    on sc.object_id = SI.object_id and sc.column_id = SI.column_id
where  sc.user_type_id = 175
and sc.max_length >1
and sdc.name is  null
and ccu.COLUMN_NAME is null
and SI.name is null
order by sdc.name


--无条件的更新字段char
select st.object_id,sc.column_id, st.name,sdc.name,sc.name
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc  on sc.object_id  = sdc.parent_object_id
and sc.column_id =  sdc.parent_column_id
where  sc.user_type_id = 175
and sc.max_length >1 and sdc.name is  null
order by sdc.name


--更改char为varchar
select 'ALTER TABLE ',
 sys.tables.name,
 ' ALTER COLUMN ',
 sys.columns.name,
 ' varchar(',
 sys.columns.max_length,
 ') ',
 case is_nullable
  when 0 then 'not null'
  else ''
 end
from sys.columns,sys.tables
where sys.columns.object_id =  sys.tables.object_id and
 user_type_id = 175 and
 max_length <> 1
order by sys.tables.name

1. 用户与身体信息管理模块 用户信息管理: 注册登录:支持手机号 / 邮箱注册,密码加密存储,提供第三方快捷登录(模拟) 个人资料:记录基本信息(姓名、年龄、性别、身高、体重、职业) 健康目标:用户设置目标(如 “减重 5kg”“增肌”“维持健康”)及期望周期 身体状态跟踪: 体重记录:定期录入体重数据,生成体重变化曲线(折线图) 身体指标:记录 BMI(自动计算)、体脂率(可选)、基础代谢率(根据身高体重估算) 健康状况:用户可填写特殊情况(如糖尿病、过敏食物、素食偏好),系统据此调整推荐 2. 膳食记录与食物数据库模块 食物数据库: 基础信息:包含常见食物(如米饭、鸡蛋、牛肉)的名称、类别(主食 / 肉类 / 蔬菜等)、每份重量 营养成分:记录每 100g 食物的热量(kcal)、蛋白质、脂肪、碳水化合物、维生素、矿物质含量 数据库维护:管理员可添加新食物、更新营养数据,支持按名称 / 类别检索 膳食记录功能: 快速记录:用户选择食物、输入食用量(克 / 份),系统自动计算摄入的营养成分 餐次分类:按早餐 / 午餐 / 晚餐 / 加餐分类记录,支持上传餐食照片(可选) 批量操作:提供常见套餐模板(如 “三明治 + 牛奶”),一键添加到记录 历史记录:按日期查看过往膳食记录,支持编辑 / 删除错误记录 3. 营养分析模块 每日营养摄入分析: 核心指标计算:统计当日摄入的总热量、蛋白质 / 脂肪 / 碳水化合物占比(按每日推荐量对比) 微量营养素分析:检查维生素(如维生素 C、钙、铁)的摄入是否达标 平衡评估:生成 “营养平衡度” 评分(0-100 分),指出摄入过剩或不足的营养素 趋势分析: 周 / 月营养趋势:用折线图展示近 7 天 / 30 天的热量、三大营养素摄入变化 对比分析:将实际摄入与推荐量对比(如 “蛋白质摄入仅达到推荐量的 70%”) 目标达成率:针对健
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值