【问题标题】:insert "+" symbol into mysql database在mysql数据库中插入“+”符号
【发布时间】:2020-10-24 02:07:57
【问题描述】:
  • 我在 mysql 数据库中有一个电话号码列表。

  • 电话号码为“234808090987”格式。

  • 我想将其更改为“+234808980898”我如何更改 数据库将 + 符号添加到每一行。我有多达 1500 个号码 数据库

    插入aspilos_log(category2) 值('2');

上述方法无效

或者有什么方法可以在打印数据库中的数字时添加 + 符号

mydb = mysql.connector.connect(
host="db",
user="root",
passwd="aspilos",
database="aspilos_log",
auth_plugin="mysql_native_password"
)
 mycursor = mydb.cursor()
 mycursor.execute("SELECT PHONE_NUMBER FROM category2")
 results = mycursor.fetchall()
 for i in zip(*results):
 number = list(i)
 print (number)
  • 我的意思是上面的输出是 (23460798509004, 23480987666556, 23498077685449),
  • 有什么方法可以打印为 (+2349084998883993, +23409878929888, +234576990046989)

【问题讨论】:

  • 数据库不应该关心如何格式化项,这是模板/渲染引擎应该做的。
  • 我在 mysql 数据库中有一个电话号码列表。 存储它们的列的数据类型是什么? 我想将其更改为“+234808980898”您是要存储带有前导加号的数字,还是要检索表中的值是否仅带有此前导加号?
  • 无论哪种方式。我最初想用前导 + 符号存储它,如果不能这样做,我想用前导 + 符号检索表的值
  • @dMd:但这不是数据库应该关心的事情。数据库专门用于存储、检索和聚合数据。不在呈现数据中。
  • @WillemVanOnsem ikr,当我试图保存它时,mysql 不接受加号。这就是促使我提出问题的原因,而不是检索

标签: python mysql django database


【解决方案1】:

你可以这样做:

SELECT CONCAT('+', PHONE_NUMBER) FROM category2 

此外,我建议不要存储可能用于格式化 phone_number 的任何内容。目前是“+”号需要格式化,如果以后这个符号变了,现在需要用新的符号来格式化电话号码怎么办?

这可能会让你感到痛苦。

【讨论】:

    猜你喜欢
    • 2018-12-03
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 2016-07-16
    • 2013-12-01
    • 1970-01-01
    相关资源
    最近更新 更多