SQLite加密码之后的用户名是什么

我用了网上的一个工具,

设置了我的SQLite数据库的密码(设置密码后很顺利,数据库文件用十六进制查看器打开后只有乱码,而不是没有密码的时候显示真实内容),
在没设置密码之前,我是这样连接数据库的(我用的是JAVA)
Class.forName("SQLite.JDBCDriver");
Connection ct = DriverManager.getConnection("jdbc:sqlite:/d:/demo.db","","");

按照传统的连接数据库的方法,以上方法的第二个参数应该是用户名,第三个参数应该是密码
但是此处只知道密码,而不知道登陆名。用下面的方式(我把密码设置为了123456)
Connection ct = DriverManager.getConnection("jdbc:sqlite:/d:/demo.db","","123456");
不能通过,
怎么解决呢????
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的 Qt 实现登录功能的示例代码,包括用户注册、多种登录方式、记住用户名密码等功能。代码中使用了 Qt 的信号和槽来实现界面和后台的交互,使用了 SQLite 数据库来保存用户信息。 首先,需要在 Qt 项目中添 SQLite 数据库支持。在 .pro 文件中添以下代码: ```pro QT += sql ``` 然后,在注册界面中,添用户名密码、确认密码等输入框,以及注册按钮。在登录界面中添用户名密码、登录按钮、记住密码选项等控件。以下是注册界面的代码: ```cpp #include "registerdialog.h" #include "ui_registerdialog.h" #include <QMessageBox> #include <QSqlQuery> RegisterDialog::RegisterDialog(QWidget *parent) : QDialog(parent), ui(new Ui::RegisterDialog) { ui->setupUi(this); // 设置密码输入框为密码模式 ui->passwordLineEdit->setEchoMode(QLineEdit::Password); ui->confirmLineEdit->setEchoMode(QLineEdit::Password); } RegisterDialog::~RegisterDialog() { delete ui; } void RegisterDialog::on_registerButton_clicked() { // 获取用户输入的信息 QString username = ui->usernameLineEdit->text(); QString password = ui->passwordLineEdit->text(); QString confirm = ui->confirmLineEdit->text(); // 判断用户名密码是否为空 if (username.isEmpty() || password.isEmpty() || confirm.isEmpty()) { QMessageBox::warning(this, "警告", "用户名密码不能为空!"); return; } // 判断两次输入的密码是否一致 if (password != confirm) { QMessageBox::warning(this, "警告", "两次输入的密码不一致!"); return; } // 查询数据库中是否已经存在该用户名 QSqlQuery query; query.prepare("SELECT * FROM users WHERE username = :username"); query.bindValue(":username", username); query.exec(); if (query.next()) { QMessageBox::warning(this, "警告", "该用户名已经被注册!"); return; } // 将用户信息保存到数据库中 query.prepare("INSERT INTO users (username, password) VALUES (:username, :password)"); query.bindValue(":username", username); query.bindValue(":password", password); if (!query.exec()) { QMessageBox::warning(this, "警告", "注册失败!"); return; } // 注册成功,关闭注册界面 QMessageBox::information(this, "提示", "注册成功!"); accept(); } ``` 以下是登录界面的代码: ```cpp #include "logindialog.h" #include "ui_logindialog.h" #include <QMessageBox> #include <QSqlQuery> #include <QSettings> LoginDialog::LoginDialog(QWidget *parent) : QDialog(parent), ui(new Ui::LoginDialog) { ui->setupUi(this); // 设置密码输入框为密码模式 ui->passwordLineEdit->setEchoMode(QLineEdit::Password); // 载上一次登录时保存的用户名密码 QSettings settings("MyApp", "Login"); QString username = settings.value("username").toString(); QString password = settings.value("password").toString(); if (!username.isEmpty()) { ui->usernameLineEdit->setText(username); ui->passwordLineEdit->setText(password); ui->rememberCheckBox->setChecked(true); } } LoginDialog::~LoginDialog() { delete ui; } void LoginDialog::on_loginButton_clicked() { // 获取用户输入的信息 QString username = ui->usernameLineEdit->text(); QString password = ui->passwordLineEdit->text(); // 判断用户名密码是否为空 if (username.isEmpty() || password.isEmpty()) { QMessageBox::warning(this, "警告", "用户名密码不能为空!"); return; } // 查询数据库中是否存在该用户 QSqlQuery query; query.prepare("SELECT * FROM users WHERE username = :username AND password = :password"); query.bindValue(":username", username); query.bindValue(":password", password); query.exec(); if (!query.next()) { QMessageBox::warning(this, "警告", "用户名密码错误!"); return; } // 登录成功,保存用户名密码到本地 if (ui->rememberCheckBox->isChecked()) { QSettings settings("MyApp", "Login"); settings.setValue("username", username); settings.setValue("password", password); } // 关闭登录窗口 accept(); } ``` 在 main 函数中,需要先创建数据库并创建用户表: ```cpp #include "logindialog.h" #include <QApplication> #include <QSqlDatabase> #include <QSqlQuery> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 创建数据库并创建用户表 QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName("users.db"); if (!db.open()) { QMessageBox::warning(nullptr, "警告", "无法创建数据库!"); return 0; } QSqlQuery query; query.exec("CREATE TABLE IF NOT EXISTS users (" "id INTEGER PRIMARY KEY AUTOINCREMENT," "username TEXT NOT NULL," "password TEXT NOT NULL)"); // 显示登录窗口 LoginDialog loginDialog; if (loginDialog.exec() == QDialog::Accepted) { // 登录成功,显示主窗口 // ... return a.exec(); } // 退出程序 return 0; } ``` 以上就是一个简单的 Qt 实现登录功能的示例代码,包括用户注册、多种登录方式、记住用户名密码等功能。具体的实现细节还需要根据需求进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值